Запрос группирует строки по date, оставляет группы с суммой больше миллиона и возвращает не более трёх групп с наибольшими суммами.
дата, номер заказа, сумма
Запрос группирует строки по date, оставляет группы с суммой больше миллиона и возвращает не более трёх групп с наибольшими суммами.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
дата, номер заказа, сумма
select date, sum(amount) as sum_amount from t group by date having sum(amount) > 1000000 order by sum_amount desc limit 3
Ответ
Запрос группирует строки по date, оставляет группы с суммой больше миллиона и возвращает не более трёх групп с наибольшими суммами.
GROUP BY считает SUM(amount) для каждого значения date, HAVING фильтрует уже агрегированный результат, ORDER BY задаёт убывание, LIMIT 3 ограничивает количество строк.
Если date содержит время, запрос группирует по точным timestamp, а не календарным дням: понадобится явное приведение с нужным часовым поясом. При равных суммах добавьте date в сортировку для устойчивого результата. Номер заказа в расчёте не используется.