我正在Microsoft Access中创建一个备件管理数据库。我有两个表,分别是ItemTable和EntryTable。 ItemTable包含有关具有唯一ItemID的每个项目的信息,而EntryTable包含每个项目使用情况的信息。我需要根据使用情况计算出每种物料的总库存量。
因此,如您所见,对于具有2的ItemID,我需要根据“进入”或“不在状态”字段的使用来计算剩余库存总量。
如果状态为In,则加上elseif状态为Out,则为负。然后总计ItemID 2的库存。因此,ItemID 2的库存总数为3。我已经通过TotalID和group by得出了ItemID,但是我无法根据其他列的条件来找出小计的方法。谢谢。
答案 0 :(得分:1)
您可以通过条件聚合来做到这一点:
select itemid,
sum(iif(status = 'In', 1, -1) * quantity) as total
from entrytable
group by itemid