cinvcode,cinvname,cinvstd,cinvm_unit,ck_code,kw_code,pc,state_name,sl,out_sl
材料编码,材料名称,材料规格,单位,仓库代码,库位代码,批次,状态,入库数,出库数
要求只按“材料编码”“批次”“库位代码”三个字段依次分组,求sum(sl)-sum(out_sl)
要求显示
cinvcode,cinvname,cinvstd,cinvm_unit,ck_code,kw_code,pc,state_name,sum(sl)-sum(out_sl)
材料编码,材料名称,材料规格,单位,仓库代码,库位代码,批次,状态,余数
我在GROUP BY 语句中,依次添加“材料编码”“批次”“库位代码”字段,
可以得到结果,但是其他字段显示不出来了;
如果GROUP BY中把把每一个字段都写进去,
分组和sum(sl)-sum(out_sl)又不对。
请问语句该怎么写?
附部分数据如下:
cinvcode cinvname cinvstd cinvm_unit ck_code kw_code pc state_name sl out_sl
209001 平机螺钉 M1012 只 102 2001 20021003 合格 0 3
209001 平机螺钉 M1012 只 102 2001 20021003 合格 0 6
209001 平机螺钉 M1012 只 102 2001 20021003 合格 0 9
208001 调节器 CS130D 只 102 2001 20021007 合格 99 0
208002 整流器 CS130D 只 102 2002 20021006 合格 99 0
208003 定子(2719) 只 102 2001 20021007 合格 99 0
208004 整流桥(2719) 只 102 2001 20021007 合格 99 0
208001 调节器 CS130D 只 102 2001 20021006 合格 100 0
208003 定子(2719) 只 102 2001 20021006 合格 100 0
208004 整流桥(2719) 只 102 2001 20021006 合格 100 0
208001 调节器 CS130D 只 102 2002 20021006 合格 123 0
209001 平机螺钉 M1012 只 102 2002 20021003 合格 277 0
209001 平机螺钉 M1012 只 102 2004 20021003 合格 277 0
209001 平机螺钉 M1012 只 102 2003 20021003 合格 277 0
209001 平机螺钉 M10*12 只 102 2001 20021003 合格 280 0
208001 调节器 CS130D 只 102 2004 20021006 合格 2004 0
---------------------------------------------------------------
呵呵,要这个是不是:
select cinvcode,MIN(cinvname) AS cinvname,MIN(cinvstd) AS cinvstd,MIN(cinvm_unit) AS cinvm_unit,MIN(ck_code) AS ck_code,kw_code,pc,sum(sl)-sum(out_sl) as asum
FROM tablename
GROUP BY cinvcode,kw_code,pc