Sobes.tech
Back to questions
Middle+
4

Что такое HAVING и чем оно отличается от WHERE?

Companies where asked
Ifellow

Answer from AI

sobes.tech AI

WHERE фильтрует строки до группировки, то есть применяется к исходным данным. HAVING фильтрует группы после применения агрегатных функций, то есть к результату GROUP BY.

Пример:

SELECT department, COUNT(*) AS employees
FROM employees
WHERE salary > 50000  -- фильтр по зарплате для отдельных строк
GROUP BY department
HAVING COUNT(*) > 10    -- фильтр по количеству сотрудников в отделе

Здесь WHERE отбирает сотрудников с зарплатой выше 50000, а HAVING — отделы, где таких сотрудников больше 10.