Назад к вопросам
Junior — Middle
82
Какое отличие между условием HAVING и условием WHERE при работе с SQL-запросами?
Ответ от нейросети
sobes.tech AI
Основное отличие между WHERE и HAVING в SQL:
- WHERE фильтрует строки до группировки (GROUP BY). Он применяется к отдельным записям таблицы.
- HAVING фильтрует группы после выполнения группировки. Используется для условий на агрегатные функции (например, COUNT, SUM).
Пример:
SELECT department, COUNT(*) as employee_count
FROM employees
WHERE salary > 50000 -- фильтруем сотрудников с зарплатой выше 50000
GROUP BY department
HAVING COUNT(*) > 10 -- выбираем отделы, где больше 10 сотрудников
Здесь WHERE отбирает строки для группировки, а HAVING — фильтрует уже сгруппированные данные.