编写SQL查询所需的帮助

时间:2012-07-05 17:52:50

标签: sql

我有两张桌子。

项目表

此项目表包含ItemId和总数量

ItemID   TotalItems     

 1        10

 2        10

 3        10

 4        10  

OrderHistory

表此订单历史记录表包含ItemId和OrderId

orderId    ItemID

 11          1

 12          1

 13          2

 14          2

 15          3

我想获得包含ItemID的结果和用于例如Item Id 1的总项目,orderhistory中有两个顺序,所以我想要下面的结果

剩余物品(公式:来自ItemTable的总物品数 - 来自Orderhistory表的相同ItemId的数量)

最终输出:

ItemId剩余物品

1    8

2    8

3    9

4    10

所以如何为此编写SQL查询。

1 个答案:

答案 0 :(得分:3)

这样的东西?

SELECT i.ItemID, i.TotalItems - COUNT(h.ItemID) AS RemainingItems
FROM ItemTable i
    LEFT JOIN OrderHistory h
        ON i.ItemId = h.ItemId
GROUP BY i.ItemId, i.TotalItems