Aller au contenu

Les fonctions d'agrégat

Les fonctions d’agrégat servent à résumer plusieurs lignes d’une table pour produire une seule valeur. Elles sont très utilisées pour obtenir des statistiques ou des informations globales.

Les principales fonctions d’agrégat

Fonction Rôle
COUNT() Compter le nombre de lignes
SUM() Claculer la somme
AVG() Calculer la moyenne
MAX() Trouver la plus grande valeur
MIN() Trouver la plus petite valeur

COUNT - compter le nombre de lignes

Compte le nombre de lignes qui correspond à la requête.

Exemples :

Calculer le nombre total de clients

SELECT COUNT(*)
FROM Client;

Calculer le nombre de clients ayant fourni une adresse courriel

SELECT COUNT(courriel)
FROM Client;

NOTE: COUNT(colonne) ignore les valeurs nulles

SUM - calculer la somme

Additionne les valeurs d'une colonne numérique pour en donner la somme totale.

Exemple :

Donner la somme des salaires de tous les employés

SELECT SUM(salaire)
FROM Employe;

AVG - calculer la moyenne

Calcule la moyenne d’une colonne numérique.

Exemple :

SELECT AVG(prix)
FROM Produit;

➡️ Calcule le prix moyen des produits.

📌 Les valeurs NULL ne sont pas incluses dans le calcul.

MAX – Trouver la plus grande valeur

Retourne la valeur maximale d’une colonne.

Exemple :

SELECT MAX(prix)
FROM Produit;

➡️ Prix le plus élevé parmi tous les produits.

MIN – Trouver la plus petite valeur

Retourne la valeur minimale d’une colonne.

Exemple :

SELECT MIN(prix)
FROM Produit;

➡️ Prix le plus bas parmi tous les produits.

⚠️ Mises en garde

Les fonctions d’agrégat sont très puissantes, mais elles obéissent à des règles strictes. Ne pas les respecter mène souvent à des erreurs SQL ou à des résultats trompeurs.

À savoir

  • COUNT(colonne) ignore les NULL
  • COUNT(*) compte toutes les lignes
  • SUM, AVG, MIN, MAX ignorent aussi les NULL
  • La clause WHERE s'exécute avant l'agrégation
  • Toutes les colonnes extraites doivent être regroupées
  • Les fonctions d'agrégat retournent une seule information
  • SUM et AVG fonctionnent seulement sur des colonnes numériques
  • MIN et MAX peuvent fonctionner sur des numériques, des dates (plus ancienne et plus récente) et des textes (ordre alphabétique)