Obtenir le nombre de commandes et le coût total
Dans cet exercice, vous allez JOIN deux tables pour obtenir, pour chaque personne, le nombre total de commandes et la somme des prix de toutes les commandes. Vous devez joindre les tables Person et History sur la clé primaire et la clé étrangère afin de récupérer toutes les informations nécessaires.
Cet exercice fait partie du cours
<cours>Requêtes hiérarchiques et récursives dans SQL Server</cours>Instructions de l’exercice
- Utilisez
COUNT()pour compter le nombre de commandes et donnez-lui l’aliasOrders. - Utilisez
SUM()pour calculer le prix total de toutes les commandes et donnez-lui l’aliasCosts. - Joignez les tables
PersonetHistory. - Agrégez les informations sur
IDavecGROUP BY.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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.___;