Junior — Middle
Каква е функцията на оператора HAVING в SQL и как се различава от WHERE?
sobes.tech AI
Отговор от AI
Клауза HAVING в SQL се използва за филтриране на резултатите след групиране на данните с GROUP BY. Тя позволява да се зададат условия за агрегирани данни.
Разлика от WHERE:
- WHERE филтрира редовете преди групирането, работи с отделни записи.
- HAVING филтрира групите след агрегиране.
Пример:
SELECT отдел, COUNT(*) AS брой_служители
FROM служители
GROUP BY отдел
HAVING COUNT(*) > 10;
Тук не може да се използва WHERE за филтриране по COUNT(*), тъй като това е агрегатна функция, а HAVING позволява да се изберат само отдели с повече от 10 служители.