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)