← Retour aux leçons Intermédiaire

GROUP BY et fonctions d'agrégation

Calculer des indicateurs à partir de plusieurs lignes.

Intermédiaire Syntaxe SQL Cas finance/compta Exercices associés

Objectif

Savoir produire des totaux, comptages, moyennes et indicateurs financiers par client, mois, fournisseur ou produit.

Utilité métier

Les données transactionnelles sont détaillées ligne par ligne. Le reporting financier demande au contraire des synthèses : CA par client, TVA par mois, achats par fournisseur ou marge par produit.

Points essentiels

  • SUM additionne les valeurs numériques.
  • COUNT compte le nombre de lignes.
  • AVG calcule une moyenne.
  • GROUP BY définit le niveau de regroupement.
  • Toute colonne non agrégée affichée dans SELECT doit généralement être présente dans GROUP BY.

Syntaxe type

SELECT colonne_regroupement, SUM(montant) AS total
FROM table
GROUP BY colonne_regroupement;

Exemple appliqué

SELECT c.nom_client, SUM(f.montant_ht) AS ca_ht
FROM clients c
JOIN factures f ON c.id_client = f.id_client
GROUP BY c.nom_client;

Erreurs fréquentes

  • Afficher une colonne non agrégée sans la mettre dans GROUP BY.
  • Confondre WHERE et HAVING.
  • Additionner un montant TTC alors que l'analyse demande un montant HT.
  • Oublier l'alias d'un indicateur calculé.