Les fonctions d’agrégation sont des fonctions mathématiques qui font partie du langage SQL.
1. Somme
Supposons que nous aimerions obtenir le nombre total d’enfants qu’ont les employés qui travaillent actuellement pour l’entreprise.
SELECT SUM(emp.Kids_number) AS NbEnfants
FROM Employee AS emp
WHERE emp.End IS NULL
On obtient le tableau suivant.
{{h}} |
---|
{{r}} |
2. Moyenne (average)
Supposons que nous aimerions obtenir le salaire moyen de l’ensemble des employés qui travaillent actuellement pour l’entreprise.
SELECT AVG(emp.Salary) AS SalaireMoyen
FROM Employee AS emp
WHERE emp.End IS NULL
On obtient le tableau suivant.
{{h}} |
---|
{{r}} |
3. Compteur
Supposons que nous aimerions obtenir le nombre de départements qu’a l’entreprise.
SELECT COUNT(dep.ID) AS NbDepartements
FROM Department AS dep
On obtient le tableau suivant.
{{h}} |
---|
{{r}} |
Récap
Nous savons maintenant utiliser les fonctions d’agrégation. MAX()
et MIN()
fonctionnent de la même manière. MAX()
donne la valeur maximale d’une colonne et MIN()
la valeur minimale. Le paramètre de la fonction est la colonne sur laquelle on désire faire le calcul.
Les débutants confondent parfois SUM()
et COUNT()
. La première calcule la somme des valeurs dans une colonne donnée. La seconde compte le nombre d’enregistrements ayant une valeur non NULL
dans une colonne donnée.
En ce qui concerne COUNT()
, la plupart du temps on veut le nombre d’enregistrements qu’a une table, on peut donc omettre la colonne :
SELECT COUNT(*) AS NbDepartements
FROM Department AS dep