Back to questions
Middle
18
Чем отличается WHERE от HAVING в SQL?
Companies where asked
e-legion
Answer from AI
sobes.tech AI
В SQL WHERE и HAVING используются для фильтрации, но на разных этапах обработки данных:
WHEREфильтрует строки до группировки (доGROUP BY). Он применяется к отдельным записям таблицы.HAVINGфильтрует уже сгруппированные данные, то есть применяется послеGROUP BYи позволяет фильтровать агрегированные значения.
Пример:
SELECT department, COUNT(*) AS employee_count
FROM employees
WHERE salary > 50000 -- фильтруем сотрудников с зарплатой выше 50k
GROUP BY department
HAVING COUNT(*) > 10 -- выбираем отделы с более чем 10 сотрудниками
Здесь WHERE отбирает строки с зарплатой выше 50000, а HAVING — группы отделов с количеством сотрудников больше 10.