日期:2014-05-17  浏览次数:20516 次

求助:统计符合条件的每日入库尾数记录
求助通过下面查询二次查询出每个【报表日期】每个【生产分厂】【当日尾数】在1~10之间的三个字段【sum(当日尾数) as 数量】和【count(产品编码)as 品种】以及对应的【sum(单价*当日尾数 )as 产值】。

问题点是产品在入库日期前面时间里面的符合条件的尾数怎么统计到后面当日又没有入库的记录里面。
比如某个产品编码投产100件,1号入库了80件,统计尾数时候不符合(1~10)的条件所以不统计,2号入库15件,进入1~10条件统计结果为品种1个、数据5件、产值5*单价。3、4号没有入库,统计结果要和2号一样,5号入库1件,统计结果为品种1个、数量4件、产值4*单件。
这里是统计单一品种,其实每个入库日期、每个生产分厂有多个品种。对于当日入库日期的容易统计,当日入库日期前面的符合条件,当日没有入库的品种怎么统计到当日统计里面。
SQL code
select scbbjl.报表日期,scd.标记1,scd.生产单号,scd.生产分厂,scd.产品编码,scd.描述,scd.单价,scd.下单数量,scbbjl.当日入库
,合计入库=(select sum(当日入库) from scbbjl b where scbbjl.标记1=b.标记1 and scbbjl.报表日期>=b.报表日期)
,当日尾数=scd.下单数量-(select sum(当日入库) from  scbbjl b where scbbjl.标记1=b.标记1 and scbbjl.报表日期>=b.报表日期)
from scd left join scbbjl on scbbjl.标记1=scd.标记1
where scbbjl.报表日期>'2012-01-01' 
order by scbbjl.报表日期,scd.生产分厂
报表日期                    标记1                  生产单号                 生产分厂       产品编码                                               描述                                                           单价                                      下单数量                                    当日入库                                    合计入库                                    当日尾数
----------------------- -------------------- -------------------- ---------- -------------------------------------------------- ------------------------ --------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- ---------------------------------------
2012-01-02  01-3969D-14          01-3969D             N1         TV1055BS1055                                       电视柜 (1550*500*485mm)                                         148.00                                  20                                      13                                      13                                      7
2012-01-02  01-3961D-8           01-3961D             N1         B1056BS1056                                        落台 (1450*450*810mm)                                          210.00                                  60                                      -25                                     57                                      3
2012-01-02  01-3959B-35          01-3959B             N1         DS412PS412-3-3                                     双人床床挺(不锯口)                                                   8.00                                    25                                      24                                      24                                      1
2012-01-02  01-3961D-8           01-3961D             N1         B1056BS1056                                        落台 (1450*450*810mm)                                          210.00                                  60                                      25                                      57                                      3
2012-01-02  01-3961D-8           01-3961D             N1         B1056BS1056                                        落台 (1450*450*810mm)                                          210.00                                  60                                      25                                      57                                      3
2012-01-02  01-3961D-9           01-3961D             N1         DC1056BS1056                                       玻璃柜 (1000*400*1500mm)                                        229.00                                  85                                      5                                       47                                      38
2012-01-02  01-3961D-11          01-3961D             N1         TV1056BS1056                                       电视柜 (1550*500*485mm)                                         165.00                                  50                                      31                                      50