Les fonctions d’agrégation sont des sous-programmes en SQL qui produisent une valeur unique lorsqu’ils sont appelés. Ces fonctions sont utilisées pour effectuer des calculs statistiques standard sur des attributs ou des champs d’une table, tels que le calcul de totaux, de moyennes, la recherche de valeurs extrêmes (les plus petites et les plus grandes) et le comptage du nombre d’enregistrements de données.
En termes simples, les fonctions d’agrégation traitent de nombreuses lignes de données pour produire une seule valeur de sortie concise et informative.
1. Types de Fonctions d’Agrégation
Il existe cinq principales fonctions d’agrégation couramment utilisées dans le traitement des données:
- SUM Cette fonction est utilisée pour additionner toutes les données d’une colonne spécifique. Il est à noter que la fonction SUM ne peut être appliquée qu’aux colonnes de type numérique. Syntaxe: SELECT SUM(nom_colonne) FROM nom_table WHERE condition;
- COUNT Cette fonction est utilisée pour compter le nombre de lignes présentes dans une colonne. Contrairement à SUM, la fonction COUNT fonctionne sur les types de données numériques et non numériques (chaînes/texte). Syntaxe: SELECT COUNT(nom_colonne) FROM nom_table WHERE condition;
- AVG (Average) Cette fonction est utilisée pour trouver la valeur moyenne d’une colonne. Comme SUM, cette fonction ne fonctionne que sur les types de données numériques. Syntaxe: SELECT AVG(nom_colonne) FROM nom_table WHERE condition;
- MIN Cette fonction est utilisée pour afficher la plus petite valeur d’une colonne. La fonction MIN est flexible car elle peut fonctionner sur les types de données numériques et non numériques. Syntaxe: SELECT MIN(nom_colonne) FROM nom_table WHERE condition;
- MAX À l’opposé de MIN, cette fonction est utilisée pour afficher la plus grande valeur d’une colonne. Cette fonction prend également en charge les types de données numériques et non numériques. Syntaxe: SELECT MAX(nom_colonne) FROM nom_table WHERE condition;
2. Clause GROUP BY
La clause GROUP BY est utilisée pour regrouper les données d’une ou plusieurs colonnes selon une expression souhaitée. Elle fonctionne en rassemblant les enregistrements de données ayant la même valeur dans un même groupe.
L’utilisation de cette clause est étroitement liée aux fonctions d’agrégation, car on souhaite souvent obtenir des résultats statistiques (tels que des totaux ou des moyennes) pour chaque catégorie spécifique. Syntaxe: SELECT nom_colonne FROM nom_table GROUP BY nom_colonne;
3. Clause HAVING
La clause HAVING a une fonction similaire à celle de la clause WHERE, c’est-à-dire ajouter des conditions ou des filtres aux résultats de la requête. Il existe cependant des différences fondamentales entre les deux:
- Remplacement de WHERE: La clause WHERE ne peut pas être utilisée conjointement avec des fonctions d’agrégation. C’est pourquoi HAVING est utilisée pour filtrer les données en fonction des résultats de ces fonctions d’agrégation.
- Opération multi-lignes: HAVING est utilisée pour les opérations multi-lignes (après le regroupement des données), tandis que WHERE agit au niveau de chaque ligne avant le regroupement.
Syntaxe: SELECT nom_colonne FROM nom_table GROUP BY nom_colonne HAVING condition;






