私は2つのシンプルなテーブルを持っています。 tbl_purchased
とtbl_sold
どのように列の合計値の間のディフェレンスを取るか?
は、私が購入したアイテムの
- SUM、項目名、GROUP BYを取る必要があり
col_item_name col_no_of_items Fan 5 Builb 5 Oven 5 Fan 2 Builb 2
tbl_sold
col_item_name col_no_of_items Fan 3 Oven 1
をtbl_purchased。
- 売り上げの合計、GROUP BYの商品名。
次のクエリを個別に使用してこれを行うことができます。
SELECT col_item_name, SUM(col_no_of_items)
FROM tbl_purchased
GROUP BY col_item_name;
と
SELECT col_item_name, SUM(col_no_of_items)
FROM tbl_sold
GROUP BY col_item_name;
今私は現在の在庫を取る必要があります。アイテム名BY GROUP - 、 (販売された商品のSUM購入したアイテムのSUM)を意味
。
SINGLE SQLクエリを使用してこれを行うことはできますか?
SELECT p.col_item_name, SUM(p.col_no_of_items) - SUM (s.col_no_of_items)
FROM tbl_purchased p
left join tbl_sold s on p.col_item_name=s.col_item_name
GROUP BY p.col_item_name;
本当にテーブルにキーが必要です。さらに2人のファンを購入したい場合はどうなりますか? – apokryfos
これは疑わしく宿題のように見えます。あなたは単一のクエリでそれを行うことができます。ジョインと集計関数を読み込みます。 – Walf
私はあなたが 'tbl'と 'col'の列は非常に素早く非常に疲れてテーブルの接頭辞の練習を見つけると思う。 – Strawberry