Junior — Middle
Koja je svrha HAVING operatora u SQL i u čemu se razlikuje od WHERE?
sobes.tech АИ
Одговор од АИ
HAVING klauza u SQL-u se koristi za filtriranje rezultata nakon grupisanja podataka pomoću GROUP BY. Omogućava postavljanje uslova za agregirane podatke.
Razlika u odnosu na WHERE:
- WHERE filtrira redove pre grupisanja, radi sa pojedinačnim zapisima.
- HAVING filtrira grupe nakon agregacije.
Primer:
SELECT odeljenje, COUNT(*) AS broj_zaposlenih
FROM zaposleni
GROUP BY odeljenje
HAVING COUNT(*) > 10;
Ovde se ne može koristiti WHERE za filtriranje po COUNT(*), jer je to agregatna funkcija, dok HAVING omogućava izbor samo onih odeljenja gde ima više od 10 zaposlenih.