请问Access中如何计算库存?有入库信息表跟出库信息表两个表,如何 实现库存=入库数量-出库数量 呢?

出库信息表中也有 配件编号 字段

一般来说,创建一个视图(也可以称为查询),就可以解决。但是要对整个库存表和销货表进行操作,不能分时段操作,如果分时段,所得的查询结果肯定不准确。因为进货与销货不是同时发生的。但对整个库存和销货表进行操作,可能由于数据量过大,速度肯定会有问题。
因此,我想了一个办法,称为刘氏法:就是建立一个存货表,当录入进货时,就向存货表中加数量,当录入销货时就从存货表减数量,说的更具体一点:比如:日白牌皮鞋,42码,单价120,数量50双,在数据编辑界面中输入这些数据,输入完毕先保存到进货表,然后以名称、规格、单价作为查询条件,到存货表中检索,如果存货表中,有同名、同规格、同价的存货(为零也算)记录,就在这条记录上加上50,如果没有,就在存货表中增加一条新的存货记录。
销货时,直接检索存货表,读写方法与存货相反,只是从存货表中减去销货就行了。
增加了一张存货表,也不算白增加,可以利用这张存货表做出完全不需要用户从键盘输入信息的销货界面,在界面上放些下拉列表框比,比如,货物名称就可以全部从存货表中提取,写进下拉列表框中,用户只要用鼠标选择就行。当用户输入销货数量时,直接检查存货数量,如果销货数量大于存货量,就提醒用户。等等。我是用Dephi的,不知你用什么,如果是IE+ASP,这样做可能要麻烦一些。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-09
SELECT BM.配件编号, RK.入库数量合计, CK.出库数量合计, RK.入库数量合计-CK.出库数量合计 AS 库存数量 FROM ((SELECT a.配件编号 FROM 出库信息表 as a UNION SELECT b.配件编号 FROM 入库信息表 as b) as BM LEFT JOIN (SELECT R.配件编号, Sum(R.入库数量) AS 入库数量合计 FROM 入库信息表 AS R GROUP BY R.配件编号) RK ON BM.配件编号 = RK.配件编号) LEFT JOIN (SELECT C.配件编号, Sum(C.出库数量) AS 出库数量合计 FROM 出库信息表 AS C GROUP BY C.配件编号) CK ON BM.配件编号 = CK.配件编号
第2个回答  2011-04-29
select a.配件编号,(sum(a.入库数量)-sum(b.出库数量)) as 库存
from 入库表 a inner join 出库表 b on a.配件编号=b.配件编号
group by a.配件编号追问

请问a是代表我所说的入库信息表,b代表出库信息表吗?“from 入库表 a inner join 出库表”中的入库表,出库表又指哪个呢? 我有点分不清。

第3个回答  2011-04-29
这里只看到入库表。没有出库表追问

刚才没传上

本回答被网友采纳
相似回答