第一个表 | 初始数据表 | |||||
产品 | 库位 | 数量 | ||||
010101 | 5 | 1000 | ||||
010102 | 5 | 2000 | ||||
第二个表 | ||||||
期初 | 产品 | 库位 | 入库数 | 出库数 | 日期 | 结存数量 |
1000 | 010101 | 5 | 100 | 50 | 2016/1/8 | 1050 |
2000 | 010102 | 5 | 100 | 50 | 2016/1/8 | 2050 |
1050 | 010101 | 5 | 50 | 5 | 2016/1/9 | 1095 |
使用一个表的数量为初始数量+第二个表
第二个表只有产品,库位,入库数,出库数,日期,要结合第一个表计算出每行的期初,和结存
1 select 日期=s.日期,产品=s.产品, 2 库位=s.库位,期初=f.数量, 3 入库=s.入库数,出库=s.出库数, 4 结存=f.数量+s.入库数-s.出库数 5 from dbo.Product1 f 6 right join dbo.Product2 s 7 on f.产品=s.产品
问题有些不清楚。
就是想做一个报表,我重新修改了下,将前两个表汇总成第三个表。
第一个表 | 初始数据表 | ||||||
产品 | 库位 | 数量 | |||||
010101 | 5 | 1000 | |||||
010102 | 5 | 2000 | |||||
第二个表 | |||||||
产品 | 库位 | 入库数 | 出库数 | 日期 | |||
010101 | 5 | 100 | 50 | 2016/1/8 | |||
010102 | 5 | 100 | 50 | 2016/1/8 | |||
010101 | 5 | 50 | 20 | 2016/1/9 | |||
010102 | 5 | 50 | 20 | 2016/1/9 | |||
汇总表 | |||||||
日期 | 产品 | 库位 | 期初 | 入库 | 出库 | 结存数量 | |
2016-01-08 | 010101 | 5 | 1000 | 100 | 50 | 1050 | |
2016-01-08 | 010102 | 5 | 2000 | 100 | 50 | 2050 | |
2016-01-09 | 010101 | 5 | 1050 | 50 | 20 | 1080 | |
2016-01-09 | 010102 | 5 | 2050 | 50 | 20 | 2080 |
@寒冬以至: 最佳给楼下吧,楼下好像弄出来了,刚回来。。。没注意看你的回复,不好意思