在庫テーブルがあり、注文されたアイテムの頻度を示すレポートを作成したいと思います。
「ストック」テーブル:
item_id | pcs | operation
apples | 100 | order
oranges | 50 | order
apples | -100 | delivery
pears | 100 | order
oranges | -40 | delivery
apples | 50 | order
apples | 50 | delivery
基本的に、これら2つのクエリを結合する必要があります。
在庫残高を出力するクエリ:
SELECT stock.item_id, Sum(stock.pcs) AS stock_balance
FROM stock
GROUP BY stock.item_id;
販売統計を出力するクエリ
SELECT stock.item_id, Sum(stock.pcs) AS pcs_ordered, Count(stock.item_id) AS number_of_orders
FROM stock
GROUP BY stock.item_id, stock.operation
HAVING stock.operation="order";
ある種のJOINでうまくいくと思いますが、クエリを結合する方法がわかりません。
必要な出力:
item_id | stock_balance | pcs_ordered | number_of_orders
apples | 0 | 150 | 2
oranges | 10 | 50 | 1
pears | 100 | 100 | 1
これは単なる例です。列が多いので、条件を追加する必要があるかもしれません。複数のクエリを組み合わせる普遍的な手法はありますか?