Foxtable(狐表)用户栏目专家坐堂 → [求助]如何用SQL语句得到这样一个表


  共有2561人关注过本帖树形打印复制链接

主题:[求助]如何用SQL语句得到这样一个表

帅哥哟,离线,有人找我吗?
loongtai
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
[求助]如何用SQL语句得到这样一个表  发帖心情 Post By:2015/7/26 10:47:00 [显示全部帖子]

表结构如下:

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150726103813.png
图片点击可在新窗口打开查看
同一物料全编号,同一到货编号,同一流水号的数据可能有多个记录。
将单据编号排序,即可得到每个记录的操作顺序。
现希望将同一物料全编号同一到货编号同一流水号的最近一次操作记录状态为0的行提取出来,组成一个新表。
身份列  状态
其中身份列=物料全编号 & “|” & 到货编号 & “|” & 流水号
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sql根据状态提取数据.zip



 回到顶部
帅哥哟,离线,有人找我吗?
loongtai
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
  发帖心情 Post By:2015/7/26 14:55:00 [显示全部帖子]

按以上的语句,能实现我所想要的结果,如果更进一步,只挑出top 1 状态=0的记录,该如何操作?我试着修改了下,但是不成功

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150726145550.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
loongtai
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
  发帖心情 Post By:2015/7/26 15:08:00 [显示全部帖子]

如果我之前得到的那个表只需要身份列,不需要状态列,那这个语句是不是能简单点?
select 物料全编号 + '|' + 到货编号 + '|' & 流水号 as 身份, (select top 1 状态 f-rom {表1} as b where a.物料全编号 = b.物料全编号 and a.到货编号 = b.到货编号 and a.流水号 = b.流水号 order by 单据编号 desc) as 状态 f-rom {表1} as a group by 物料全编号, 到货编号, 流水号
换成类似这样的语句:在where 中对top 1 状态 进行判断

此主题相关图片如下:qq截图20150726150848.png
按此在新窗口浏览图片


 回到顶部
帅哥哟,离线,有人找我吗?
loongtai
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
  发帖心情 Post By:2015/7/26 15:19:00 [显示全部帖子]

4楼的我试过了,是正确的。

 回到顶部