Numărul de comenzi și costurile totale
În acest exercițiu, vei folosi JOIN pentru a uni două tabele și a obține numărul total de comenzi pentru fiecare persoană, împreună cu suma prețurilor tuturor comenzilor. Va trebui să unești tabelele Person și History pe cheile primară și externă pentru a obține toate informațiile necesare.
Acest exercițiu face parte din cursul
Interogări ierarhice și recursive în SQL Server
Instrucțiuni pentru exercițiu
- Folosește
COUNT()pentru a număra comenzile și atribuie-i aliasulOrders. - Folosește
SUM()pentru a calcula prețul total al tuturor comenzilor și atribuie-i aliasulCosts. - Realizează join-ul tabelelor
PersonșiHistory. - Agregă informațiile după
IDfolosindGROUP BY.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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.___;