Kitobdan iqtiboslar SQL для аналитика. 50 задач с решениями на PostgreSQLmuallif Максим Чалышев
LTV (Lifetime Value) — общая сумма денег, потраченная пользователем в магазине за всё время. Это ключевая метрика для оценки рейтинга клиента.
* Задание со звёздочкой
Посчитайте retention за 7 дней, но используйте только покупки (users_log с action = ’buy’). Измените фильтр в user_activity.
Подсказка: добавьте AND l.action = ’buy’ в условие JOIN или WHERE.
* Задание со звёздочкой
Напишите запрос, который выводит топ-2 товара по выручке в каждой категории. Используйте ROW_NUMBER () OVER (PARTITION BY …).
Подсказка: возьмите за основу задачу 3 и измените условие фильтрации rank <= 2.
* Задание со звёздочкой
Напишите запрос, который строит кросс-таблицу выручки по кварталам (используйте DATE_TRUNC (’quarter’, order_date)) и категориям «Ноутбуки», «Смартфоны», «Планшеты».
Подсказка: замените ’month’ на ’quarter’ в первом запросе crosstab.
* Задание со звёздочкой
Напишите запрос, который выводит пользователей, сделавших хотя бы 3 заказа со статусом ’completed’. Используйте HAVING.
* Задание со звёздочкой
Напишите запрос, который выводит средний чек по категориям для заказов, сделанных в феврале 2024 года. Используйте фильтр по дате и группировку.
Подсказка: добавьте в WHERE условие на order_date BETWEEN «2024-02-01» AND «2024-02-29» — .
