Почему условие с SUM в WHERE не выполняется
Нужно получить клиентов, у которых суммарная стоимость заказов превышает 100 000. Аналитик написал:
SELECT client_id, SUM(amount) AS total
FROM orders
WHERE SUM(amount) > 100000
GROUP BY client_id;
Что произойдёт при выполнении и как получить нужный результат?
- Запрос отработает как задумано: WHERE отфильтрует группы клиентов по накопленной сумме заказов
- Запрос завершится ошибкой: агрегат в WHERE недопустим, условие на сумму группы ставится в HAVING
- Запрос выполнится, но вернёт пустой результат из-за отсутствия ORDER BY и сортировки групп
- Запрос выполнится и просуммирует все заказы таблицы в одну итоговую строку
