注文数と合計コストを取得する
この演習では、2 つのテーブルを JOIN して、各人物の注文数とすべての注文の価格合計を取得します。必要な情報を得るために、Person テーブルと History テーブルを主キーと外部キーで結合してください。
この演習はコースの一部です
SQL Server における階層型クエリと再帰クエリ
演習の手順
- 注文数を
COUNT()で算出し、エイリアスをOrdersにします。 - すべての注文の合計金額を
SUM()で算出し、エイリアスをCostsにします。 PersonテーブルとHistoryテーブルを結合します。GROUP BYを使ってID単位で集計します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
INSERT INTO Person
VALUES (1, 'Andrew', 'Anderson','Union Ave 10','New York','1986-12-30');
INSERT INTO Person
VALUES (2, 'Sam', 'Smith','Flushing Ave 342','New York','1986-12-30');
INSERT INTO History VALUES ( 1, 'IPhone XS', 1000, 1);
INSERT INTO History VALUES ( 2, 'MacBook Pro', 1800, 1);
INSERT INTO History VALUES ( 5, 'IPhone XR', 600, 2);
INSERT INTO History VALUES ( 6, 'IWatch 4', 400, 1);
SELECT
Person.ID,
-- Count the number of orders
___(___) as ___,
-- Add the total price of all orders
___(___) as ___
FROM Person
-- Join the tables Person and History on their IDs
___ History
ON Person.___ = History.___
-- Aggregate the information on the ID
___ ___ Person.___;