查询查找库存

时间:2013-10-31 11:20:10

标签: sql ms-access

如何查找股票..?

我有一个表“事务”,其中有ProductID(int),TransactionType(boolean),Qty(int)等字段。

在我们购买时,TransactionType为True, 虽然我们正在销售,但TransactionType为False ..

Id          Type          Qty  
1           true          3  
1           true          9  
1           False         2  

如果我购买12件产品1,则 并且售出2个产品数量1,
那我怎样才能让股票剩余......?

3 个答案:

答案 0 :(得分:1)

select ProductID,
       sum(iif(TransactionType = 1, Qty, -Qty)) as total
from Transactions
group by ProductID

答案 1 :(得分:1)

试试这个:

SELECT ProductId,
       SUM(CASE WHEN TransactionType = 1 THEN Qty ELSE -Qty END)
FROM Transactions
GROUP BY ProductId

答案 2 :(得分:0)

您计算总和,但您需要一个案例陈述来将数量解释为正面或负面,而不是总和数量:

select id, sum(Qty * case when type = 'true' then 1 else -1 end) as sum_qty
from transactions
group by id;