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 l'attestation finale.

7 500 XOF / 11,43 € / 12,46 $

Débloquez les 87 leçons restantes de ce module

Pour vous communiquer où envoyer le paiement.

Moyen de paiement souhaité

Nous vous contactons pour le paiement — activé dès réception.