Junior — Middle
Mi a HAVING operátor szerepe az SQL-ben, és miben különbözik a WHERE-től?
sobes.tech MI
Válasz az MI-től
A HAVING záradék SQL-ben az eredmények szűrésére szolgál a GROUP BY segítségével történő csoportosítás után. Lehetővé teszi az összesített adatok feltételeinek meghatározását.
Eltérés a WHERE-től:
- WHERE a sorokat szűri a csoportosítás előtt, egyedi rekordokkal dolgozik.
- HAVING a csoportokat szűri a csoportosítás után.
Példa:
SELECT osztály, COUNT(*) AS alkalmazottak_száma
FROM alkalmazottak
GROUP BY osztály
HAVING COUNT(*) > 10;
Itt nem használható a WHERE a COUNT(*) szerinti szűréshez, mivel ez egy aggregáló függvény, míg a HAVING csak azokat az osztályokat választja ki, ahol több mint 10 alkalmazott van.