ClickHouse · ClickHouse 26.3.57.12
Продавцы маркетплейса смотрят выручку по неделям, и неделя у них, как в любом российском календаре, — с понедельника по воскресенье. Заказы воскресенья должны попадать в ту же неделю, что и понедельник перед ним.
В таблице orders — order_id, дата заказа order_date и сумма amount_rub. Верните week_start — дату понедельника, orders — число заказов и revenue_rub — выручку за неделю. Порядок строк не важен.
В работе: Недельные отчёты и когорты по неделям: продажи, регистрации, активность.
Как проверяем
Движка ClickHouse в браузере пока нет, поэтому здесь не запрос, а выбор решения. Выберите все верные варианты (одна лишняя отметка допустима). После ответа — почему каждый вариант верный или нет. Ответ один на подход: после него показываем разбор.
Источник: наша задача на данных Ozon: заказы маркетплейса по дням. Условие пересказано своими словами.
Давали на собеседовании?
Какие запросы сгруппируют заказы по неделям с понедельника?
- toStartOfWeek(order_date)
- toMonday(order_date)
- order_date - toDayOfWeek(order_date)
- toStartOfWeek(order_date, 1)
- toISOWeek(order_date)