Назад к вопросам
Middle
19
Чем отличается WHERE от HAVING в SQL?
Компании, где спрашивали
e-legion
Ответ от нейросети
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.