Junior — Middle
Care este scopul operatorului HAVING în SQL și în ce constă diferența față de WHERE?
sobes.tech AI
Răspuns de la AI
Clauza HAVING în SQL este utilizată pentru a filtra rezultatele după ce datele au fost grupate cu GROUP BY. Permite stabilirea condițiilor pentru datele agregate.
Diferența față de WHERE:
- WHERE filtrează rândurile înainte de grupare, lucrează cu înregistrări individuale.
- HAVING filtrează grupurile după agregare.
Exemplu:
SELECT departament, COUNT(*) AS număr_angajați
FROM angajați
GROUP BY departament
HAVING COUNT(*) > 10;
Aici, nu se poate folosi WHERE pentru filtrarea după COUNT(*), deoarece este o funcție de agregare, în timp ce HAVING permite selectarea doar a departamentelor cu mai mult de 10 angajați.