各位前輩們好,小弟被一個問題難住了也爬了許多文但是還是毫無頭緒,只好厚著臉皮發問了。
我先陳述一下我的問題。
我現在在記錄庫存紀錄的方式是
物料    / 數量  / (進=0/出=1)
物料A   /  5   /   0
物料A   /  3   /  1
物料B   /  6   /   0
物料C   /  5   /  0
物料B   /  1   /  1
大概紀錄的方式像LOG一樣
如果今天是單一物品呼叫出來小弟是會做的,但是我現在面臨的情境是我需要把物料變成如下呈現
物料     /  數量
物料A    /   2
物料B    /   5
物料C    /   5
把所有紀錄做加總
請求各位前輩給我一個方向就好,不管是在資料庫或著是後端能達到目標的操作方向都好,不求答案。
感激不盡!
方向是 GROUP BY, SUM, CASE
不求答案就不要往下看囉...

CREATE TABLE table1
    ([material] varchar(1), [amount] int, [inout] int)
;
    
INSERT INTO table1
    ([material], [amount], [inout])
VALUES
    ('A', 5, 0),
    ('A', 3, 1),
    ('B', 6, 0),
    ('C', 5, 0),
    ('B', 1, 1)
;
SELECT material, 
SUM(CASE WHEN inout=0 THEN amount ELSE -1*amount END) AS amt
FROM table1 
GROUP BY material