PaliSkill
SQL Intermédiaire

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, AVG et 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 le GROUP 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 dans commandes.

À 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