Junior
134
questionbank

В чем отличие между конструкциями WHERE и HAVING в SQL?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

WHERE фильтрует строки до группировки (GROUP BY), влияя на то, какие строки будут участвовать в агрегатных функциях. HAVING фильтрует группы строк после группировки, основываясь на результатах агрегатных функций.

ОсобенностьWHEREHAVING
ПрименениеК отдельным строкамК группам строк
Время обработкиПеред GROUP BYПосле GROUP BY
ИспользованиеС полями из таблицы, но без агрегатных функцийС результатами агрегатных функций или полями из GROUP BY

Пример использования WHERE:

sql

Пример использования HAVING:

sql

Пример совместного использования:

sql