Топ-10 продуктов по выручке через argMax()

Junior SQL E-commerce

Условие задания

**Данные:** таблица orders с продажами:

[см. код в задании]

**Задание:**

1. Вывести топ-10 продуктов по суммарной выручке за последний квартал
2. Результат: product_name, total_quantity, total_revenue
3. Используй ClickHouse функцию **`argMax()`** для получения product_name (на случай если name редактировали)
4. Отсортируй по revenue убыв.

Пример данных

Структура для ориентира — реальные значения из эталонного решения.

CREATE TABLE orders (
    order_id UInt64,
    product_id UInt32,
    product_name String,
    quantity UInt32,
    price Decimal(18, 2),
    order_time DateTime
) ENGINE = MergeTree
ORDER BY (order_time, order_id)
PARTITION BY toYYYYMM(order_time);

Темы

ClickHouse argMax GROUP BY агрегация

Подсказки

Все тестовые задания →

Частые вопросы

Какой уровень знаний нужен для задачи "Топ-10 продуктов по выручке через argMax()"?

Это задание для уровня Junior. Подходит для начинающих аналитиков, проверяет базовые знания SQL/Python/статистики.

На каких собеседованиях встречается такая задача?

Подобные задания в категории «SQL» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: ClickHouse, argMax, GROUP BY, агрегация.

Сколько времени даётся на решение?

На реальном собеседовании на подобную задачу отводится 5-10 минут — проверяется скорость и базовая грамотность. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.

Где ещё потренироваться по теме «SQL»?

На zasqlpython.ru есть 520+ SQL задач в песочнице с автопроверкой кода, конспекты SQL для аналитика, AI мок-собеседование с разбором ваших ответов.

← Все задания