SELECT DISTINCT u.user_id,
DATE_TRUNC('month',created_at)::date AS start_cohort,
COUNT(*) OVER (PARTITION BY DATE_TRUNC('month', created_at)) AS cohort_size
FROM tools_shop.users u
Поместите предыдущий запрос в общее табличное выражение. Постройте таблицу с сессиями, где будут находиться следующие поля:
-лайфтайм;
-месяц заказа;
-месяц старта когорты;
-количество пользователей в когорте, или размер когорты;
-выручка.
Подсказка:
Чтобы выделить месяц, используйте функцию DATE_TRUNC, а затем приведите результат к типу date. Для расчёта лайфтайма заказа используйте комбинацию функций EXTRACT и AGE. Функция AGE(<дата_1>, <дата_2>) вернёт разницу между двумя датами в виде интервала времени, а EXTRACT с аргументом MONTH позволит получить количество месяцев из этого интервала. Группировать значения не нужно. Чтобы добавить все необходимые поля, присоедините к таблице из предыдущего задания таблицу с заказами.
Анель
Синергия Омский ф-л
Спасибо! Я получила 4 и меня это вполне устраивает. Работа была выполнена досрочно и недорого!
Алекс
Новосибирский Государственный Педагогический Университет
Заказал работу по иностранному языку. Девушка - эксперт выполнила работу максимально опера...
Анель
Синергия Омский ф-л
Корпоративные финансы выполнено Евгенией на 5 и очень дешево! Огромное спасибо!
Александра
СПбГТИ(ТУ)
Не первый раз прошу помощи у данного исполнителя! Всё верно, оперативно, без нареканий! Ир...