Вопрос №8
Осталось:
Объясните разницу между WHERE и HAVING
Образцовый ответ
Показывать ответ по умолчанию
WHERE
- Фильтрует строки до группировки данных.
- Не может использовать агрегатные функции (SUM(), COUNT(), AVG(), и т.д.).
- Применяется к отдельным записям таблицы.
Пример:
SELECT department_id, COUNT(*) FROM employees WHERE salary > 50000 GROUP BY department_id;
HAVING
- Фильтрует группы строк после группировки данных.
- Может использовать агрегатные функции.
- Применяется к результатам GROUP BY.
Пример:
SELECT department_id, COUNT(*) AS num_employees FROM employees GROUP BY department_id HAVING COUNT(*) > 5;