Почему
WHERE не может использовать агрегатные функции?Ответ: WHERE фильтрует строки на этапе до группировки, а агрегатные функции, такие как SUM, AVG, COUNT, вычисляются после выполнения GROUP BY.
На момент применения WHERE агрегированных значений ещё не существует, поэтому условия на них нельзя использовать. Для фильтрации по агрегатам применяется HAVING, который работает после группировки и уже видит результаты агрегатных вычислений.
tags: #собеседование
➡ SQL Community | Чат