Все задачи

Сессионизация пользовательской активности

Продвинутый

Задача уровня Yandex/Meta. **Условие:** Разбейте активность пользователей на сессии. Новая сессия начинается, если между действиями прошло более 30 минут. **Таблица:** user_sessions (user_id, action_time, action_type, page_url, device_type) **Требования:** 1. Для каждого действия определить session_id 2. Рассчитать для каждой сессии: start_time, end_time, duration_minutes, actions_count 3. Вывести user_id, session_id, start_time, end_time, duration_minutes, actions_count **Подсказка:** LAG + условный SUM для создания номера сессии.

Категория
Window Functions
Время
~30 мин
Базы данных
PostgreSQLGreenplum
Теги
YandexInterviewSessionizationLAGLEADTime Seriesоконные функции

Войдите, чтобы решить

Начать решение