各位大哥帮帮忙吧,关于查询语句,帮帮小妹吧
有一个表是存储入库出库单信息的表GS01,里面记录着很多入库出库信息,里面有字段是'数量','业务'和'编码'和'仓库代码','业务'字段里面记录着是'入库'和'出库'标识,'编码'记录着所有入库出库品种的代码,还有一个表是库存表GS031,有字段期初库存和仓库代码,现在我要把同一种'编码'的品种把它的入库数量、出库数量和库存数量汇总一下
库存数量=gs031 .期初库存 + GS01 业务类型='入库' .数量 - GS01 业务类型='2'. 数量
如果所查询的代码在gs031中没有,那么期初的数量就为0
库存数量=GS01 业务类型='入库' .数量 - GS01 业务类型='2'. 数量
还有一个情况是,在gs031表中有仓库代码这个字段,比如说001000101这个编码的商品在一仓库有200个,在二仓库也有300个,假如我的在查询条件中不选仓库这个条件的话,我就要把一仓库和二仓库是这种编码的商品也一同汇总出来。并且在一条记录显示出来。
希望各位老大帮帮小妹,我会非常感谢你们的
我写了一个语句,但和我所要的查询结果有点不符,希望各位帮忙
Select 仓库名称,GS01.编码,(CASE WHEN GS031.期初数量 IS NULL THEN 0.0 ELSE GS031.期初数量
END) 期初数量,SUM(CASE WHEN 业务类别='1' THEN 数量 ELSE 0 END) 入库数量,SUM(CASE WHEN 业务类
别='2' THEN 数量 ELSE 0 END) 出库数量,(CASE WHEN GS031.期初数量 IS NULL THEN 0 ELSE GS031.期
初数量 END)+SUM(CASE WHEN 业务类别 ='1' THEN 数量 ELSE 0 END)-SUM(CASE WHEN 业务类别='2'
THEN 数量 ELSE 0 END) 库存 From GS01,GS031,GS11 Where (GS01.编码=GS031.编码) AND (GS031.仓库
代码 *=GS11.仓库代码) And (GS01.编码='001000101') AND (GS031.仓库代码='001') GROUP BY GS01.
编码,GS031.期初数量,GS031.仓库代码,GS11.仓库名称