Встречается на собеседованиях • сегодня
В чем разница между командами WHERE и HAVING в SQL
WHERE и HAVING используются для фильтрации данных в SQL, но работают на разных этапах запроса:
- WHERE фильтрует строки до группировки (GROUP BY). Применяется к отдельным записям.
- HAVING фильтрует после группировки. Работает с агрегированными данными (COUNT, SUM, AVG и т.д.).
Пример:
sql
-- WHERE: фильтрация до группировки
SELECT Department, COUNT(*)
FROM Employees
WHERE Salary > 50000 -- фильтр отдельных записей
GROUP BY Department;
-- HAVING: фильтрация после группировки
SELECT Department, COUNT(*) as EmpCount
FROM Employees
GROUP BY Department
HAVING COUNT(*) > 10; -- фильтр по агрегатной функцииКлючевые отличия:
WHEREне может использовать агрегатные функцииHAVINGтребует наличия GROUP BY (кроме случаев с агрегатами по всей таблице)- Порядок выполнения: WHERE → GROUP BY → HAVING

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы