Вступить в клуб →
средняявопросSQL и модель данных

Почему условие с 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 и сортировки групп
  • Запрос выполнится и просуммирует все заказы таблицы в одну итоговую строку

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела