注册 登录
编程论坛 SQL Server论坛

求教各位大虾

zjtzxqh 发布于 2008-09-18 23:37, 745 次点击
小弟碰到一个问题,实在想不起来该如何解决,请位大虾帮助。
表A(入库)
日期         物料代码      物料名称     规格型号       入库数量
2008-01-01  1.01.001      密封圈         1*1            10
2008-01-02  1.01.002      轴承           201            2
2008-03-02  1.01.002      轴承           201            10
……
表B(出库)
日期         物料代码      物料名称     规格型号       出库数量
2008-01-01  1.01.001      密封圈         1*1            2
2008-01-02  1.01.002      轴承           201            2
2008-03-02  1.01.002      轴承           201            3
……
希望能生成查询
物料代码      物料名称     规格型号       入库数量     出库数量
1.01.001      密封圈         1*1            10           2
1.01.002      轴承           201            12           5
……
请各位赐教,谢谢

[[it] 本帖最后由 zjtzxqh 于 2008-9-18 23:40 编辑 [/it]]
2 回复
#2
师妃暄2008-09-19 09:00
哪个是主键?

日期+代码+型号=主键?
#3
师妃暄2008-09-19 09:07
select c.物料代码,c.规格型号,c.物料名称,c.入库数量,d.出库数量 from
(select 日期,物料代码,物料名称,规格型号,SUM(入库数量) as 入库数量 from A group by 日期,物料代码,物料名称,规格型号) as c
inner join (select 日期,物料代码,物料名称,规格型号,SUM(出库数量) as 出库数量 from A group by 日期,物料代码,物料名称,规格型号) as d
on c.物料代码=d.物料代码 AND c.物料名称=d.物料名称 AND c.规格型号=d.规格型号

[[it] 本帖最后由 师妃暄 于 2008-9-19 12:39 编辑 [/it]]
1