Back to questions
СБЕР
Middle
1
Стандартный вопрос по SQL: WHERE и HAVING — в чём отличие?
Companies where asked
Answer from AI
sobes.tech AI
Основное отличие между WHERE и HAVING в SQL заключается в том, на каком этапе они фильтруют данные:
WHEREфильтрует строки до группировки. Используется для ограничения исходного набора данных.HAVINGфильтрует группы после применения агрегатных функций и группировки (GROUP BY).
Пример:
SELECT department, COUNT(*) as emp_count
FROM employees
WHERE salary > 50000 -- фильтруем сотрудников с зарплатой > 50000
GROUP BY department
HAVING COUNT(*) > 10 -- выбираем отделы с более чем 10 такими сотрудниками
Здесь WHERE ограничивает исходные строки, а HAVING — итоговые группы.