Sobes.tech
Junior — Middle

Quelle est la fonction de l'opérateur HAVING en SQL et en quoi diffère-t-il de WHERE?

sobes.tech IA

Réponse de l'IA

La clause HAVING en SQL est utilisée pour filtrer les résultats après avoir regroupé les données avec GROUP BY. Elle permet de définir des conditions pour les données agrégées.

Différence avec WHERE :

  • WHERE filtre les lignes avant le regroupement, travaille avec des enregistrements individuels.
  • HAVING filtre les groupes après l'agrégation.

Exemple :

SELECT département, COUNT(*) AS nombre_employés
FROM employés
GROUP BY département
HAVING COUNT(*) > 10;

Ici, WHERE ne peut pas être utilisé pour filtrer par COUNT(*), car c'est une fonction d'agrégation, tandis que HAVING permet de sélectionner uniquement les départements avec plus de 10 employés.