取得訂單數量與總成本
在這個練習中,你會使用 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.___;