Флаг начала сессии в интернет-магазине

Флаг начала сессии в интернет-магазине

Ты — аналитик онлайн-гипермаркета FreshCart. Маркетинг готовит расчёт конверсии «на сессию», и первый шаг — разметить поток просмотров страниц: где заканчивается один визит покупателя и начинается следующий. Правило принято такое: если с предыдущего просмотра того же покупателя прошло СТРОГО больше 30 минут — начинается новая сессия; ровно 30 минут — это ещё та же сессия. Самый первый просмотр покупателя всегда открывает новую сессию. Разметь каждый просмотр из page_views этим флагом. Верни столбцы: - customer_id — идентификатор покупателя; - viewed_at — время просмотра (timestamp, как в таблице); - is_new_session — boolean: true, если этим просмотром начинается новая сессия, иначе false. Сортировка: customer_id по возрастанию, затем viewed_at по возрастанию. В вывод входят ВСЕ просмотры, включая первые. Временные метки внутри одного покупателя не повторяются.

Пример ожидаемого ответа

Это пример правильного ответа — у него своё количество строк, оно не должно совпадать с таблицами в схеме. Названия столбцов в твоём ответе должны совпадать с этим примером — переименуй их через AS, если нужно.

customer_idviewed_atis_new_session
12026-05-03T09:00:00true
12026-05-03T09:10:00false
12026-05-03T09:41:00true
PostgreSQLv16

Здесь будет результат вашего запроса

Фокус-радио
На паузе · SomaFM · Fluid