Page 38 - DCG - SQL - 2025
P. 38
MÉMO – Comment repérer un besoin de GROUP BY ou de HAVING
Quand utiliser GROUP BY
Utilisez GROUP BY dès que vous devez regrouper plusieurs lignes pour effectuer un calcul par groupe.
Vous devez regrouper les données par une colonne logique (ex. client, produit, catégorie...) avant de
pouvoir utiliser des fonctions comme COUNT, SUM, AVG…
Signes révélateurs dans l’énoncé :
• « Pour chaque… »
• « Par catégorie de… »
• « Le total par… »
• « Afficher la moyenne pour chaque… »
À retenir :
• Toute colonne non agrégée dans le SELECT doit apparaître dans le GROUP BY.
• Vous pouvez regrouper avec un alias défini dans le SELECT.
Quand utiliser HAVING
Utilisez HAVING lorsque vous souhaitez filtrer un résultat basé sur une fonction d’agrégation (ex. ne
garder que les groupes où la somme dépasse un certain seuil).
Indices typiques :
• « Uniquement les groupes dont le total est… »
• « Les clients ayant passé plus de… »
• « Les produits dont la moyenne est inférieure à… »
Attention :
• WHERE filtre les lignes avant le regroupement
• HAVING filtre les groupes après le regroupement
33