Office中国论坛/Access中国论坛

标题: 请教:能否更快捷的查询出库存表? [打印本页]

作者: ydyyhx    时间: 2008-8-18 21:50
标题: 请教:能否更快捷的查询出库存表?
一个产品表
一个进货表
一个销售表
关系是产品表的产品编码一对多进货表和销售表
想要得到的结果是查处库存总量=进货表-销售表。
这里有一个问题:进货表中存在的产品销售表不一定有,所以直接使数量相减得不到完整的库存。
我使用了一个笨办法:先求得进货表和销售表都有的产品库存。然后求出进货表中有而销售表中没有的库存。再把两个库存表连接起来。
这样虽然可以实现,但是显得太笨了,有没有更好的查询直接得到结果的?

例子中我用了三个查询:不曾销售库存、已经销售库存和库存总数。

请高手指点一下。谢谢!


谢谢二楼回复!
但是有的数据好像计算了两次啊?请看

[ 本帖最后由 ydyyhx 于 2008-8-18 22:27 编辑 ]
作者: 咱家是猫    时间: 2008-8-18 22:10
SELECT 产品.产品编号, 产品.产品描述, 产品.进货价格, 产品.统一售价, Sum(nz([进货表].[进货数量])) AS 进货数量, Sum(nz([销售表].[销售数量])) AS 销售数量, Sum(nz([进货表].[进货数量]))-Sum(nz([销售表].[销售数量])) AS 当前库存
FROM (产品 LEFT JOIN 进货表 ON 产品.产品编号 = 进货表.产品编号) LEFT JOIN 销售表 ON 产品.产品编号 = 销售表.产品编号
GROUP BY 产品.产品编号, 产品.产品描述, 产品.进货价格, 产品.统一售价;
作者: ydyyhx    时间: 2008-8-19 08:23
标题: 楼上说的有点问题
谢谢楼上回复。
不过查询出来有问题,图片在一楼。
作者: 咱家是猫    时间: 2008-8-19 21:35
SELECT 产品.产品编号, 产品.产品描述, 产品.进货价格, 产品.统一售价, IM.进货合计, EX.销售合计, IM.进货合计-EX.销售合计 AS 当前库存
FROM (产品 LEFT JOIN [SELECT 产品编号,Nz(Sum(进货表.进货数量),0) AS 进货合计 FROM 进货表 GROUP BY 产品编号]. AS IM ON 产品.产品编号=IM.产品编号) LEFT JOIN [SELECT 产品编号, Nz(Sum(销售表.销售数量),0) AS 销售合计 FROM 销售表 GROUP BY 产品编号]. AS EX ON 产品.产品编号=EX.产品编号
GROUP BY 产品.产品编号, 产品.产品描述, 产品.进货价格, 产品.统一售价, IM.进货合计, EX.销售合计;
作者: tz-chf    时间: 2008-8-19 21:39
进货和销售分别作合计,再和产品表作外部连接查询
作者: leiou2007    时间: 2008-11-16 10:59
好东西顶
作者: yanlinxy    时间: 2008-12-9 23:12
我来学习哈·············




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3