0

以下に2つのテーブルがあります。

アイテムテーブル

この商品テーブルには、ItemId と合計数量が含まれています

ItemID   TotalItems     

 1        10

 2        10

 3        10

 4        10  

注文履歴

テーブル この注文履歴テーブルには、ItemId と OrderId が含まれています

orderId    ItemID

 11          1

 12          1

 13          2

 14          2

 15          3

ItemID と、たとえば Item Id 1 に使用される合計アイテムを含む結果を取得したい場合、 orderhistory には2つの注文があるため、以下のような結果が必要です

残りのアイテム ( 式 : ItemTable からのアイテムの合計 - Orderhistory テーブルからの同じ ItemId の数)

最終出力:

ItemId 残りのアイテム

1    8

2    8

3    9

4    10

そのためのSQLクエリの書き方。

4

1 に答える 1

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
于 2012-07-05T18:00:01.547 に答える