Restriction après agrégation (HAVING)

Définition

La clause HAVING permet d'effectuer une second restriction après l'opération d'agrégation.

Syntaxe

1
SELECT liste d'attributs de partionnement à projeter et de fonctions de calcul
2
FROM liste de relations
3
WHERE condition à appliquer avant calcul de l'agrégat
4
GROUP BY liste ordonnée d'attributs de partitionnement
5
HAVING condition sur les fonctions de calcul

Exemple

1
SELECT Societe.Nom, AVG(Personne.Age)
2
FROM Personne, Societe
3
WHERE Personne.NomSoc = Societe.Nom
4
GROUP BY Societe.Nom
5
HAVING COUNT(Personne.NumSS) > 2

Cette requête calcul l'âge moyen du personnel pour chaque société comportant plus de 2 salariés.