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

救一个分组统计同时进行减法运算的语句
原意是这样的:
要开发一个工厂用的仓库管理软件,最终目的是把厂里月底的盘点数盘统计清楚,平时可以查看库存。
这是一家来单加工的工厂,产品是手提袋。不同的款式有不同的工艺,走不同的流程。
他们以前的方法是按PO来盘点,比如说半成品A,也会按PO分开。
这就很麻烦,没办法每个PO都到物料管理里面建立一个料号,我就只在半成品入库表里加了一个PO字段,希望可以使用PO来统计。但是这样也会有一个问题,关于原材料,原材料是不需要按PO统计的。
反正好乱。上面为背景,希望高手可以帮我解决下面这个问题,上面的有好建议请指点一下。


表A
物料编号    物料名称   进库出库    数量
01          铅笔       进库       100
02          钢笔       进库       200
01          铅笔       出库       50
02          钢笔       出库       65
求获得各个料库存的SQL查询语句,谢谢。
希望得到的结果如下:
物料编号    物料名称     结存数量
01          铅笔         50
02          钢笔         135
另外这样的表设计是否合理?不合理可以改。

------解决方案--------------------
SELECT
 物料编号,物料名称,
 SUM(CASE WHEN 进库出库='进库' THEN 数量 ELSE -数量 END) AS 结存数量
FROM
 A
GROUP BY
 物料编号,物料名称