Leçon 6 / 9 — Chapitre 2: Jointures avancées et combinées
JOIN combiné à SUM et AVG
Les fonctions d'agrégation comme SUM ou AVG fonctionnent après une jointure de la même façon qu'après un simple GROUP BY sur une table seule.
SELECT p.categorie, SUM(c.quantite) AS total_quantite
FROM produits p
JOIN commandes c ON p.id = c.produit_id
GROUP BY p.categorie;
Après la jointure, chaque commande porte la catégorie de son produit : commande 1 (papeterie, quantité 3), commande 2 (papeterie, quantité 2), commande 3 (hygiène, quantité 5), commande 4 (boisson, quantité 1), commande 5 (hygiène, quantité 4).
SUM(c.quantite) par catégorie donne : papeterie = 3 + 2 = 5, hygiène = 5 + 4 = 9, boisson = 1.
À retenir :
SUM,AVGet les autres fonctions d'agrégation s'appliquent aux lignes obtenues après la jointure, groupe par groupe.- La colonne agrégée (ici
c.quantite) peut très bien venir d'une table différente de celle utilisée dans leGROUP BY(p.categorie) — c'est justement l'intérêt de combiner jointure et agrégation. - Sans jointure, il serait impossible de connaître la catégorie d'une commande : cette information vit dans
produits, pas danscommandes.
À vous de jouer : calculez AVG(c.quantite) par catégorie sur ces mêmes données, et comparez avec les totaux SUM obtenus ci-dessus.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 80 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès