Ottenere il numero di ordini e i costi totali
In questo esercizio, eseguirai un JOIN tra due tabelle per ottenere il numero totale di ordini per ogni persona e la somma dei prezzi di tutti gli ordini. Devi unire le tabelle Person e History sulle chiavi primaria e esterna per ottenere tutte le informazioni necessarie.
Questo esercizio fa parte del corso
Query gerarchiche e ricorsive in SQL Server
Istruzioni dell'esercizio
- Usa
COUNT()per contare il numero di ordini e assegna l'aliasOrders. - Usa
SUM()per calcolare il prezzo totale di tutti gli ordini e assegna l'aliasCosts. - Esegui il join delle tabelle
PersoneHistory. - Aggrega le informazioni su
IDusandoGROUP BY.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
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.___;