У меня есть таблица с 3 полями: user_id, page и timestamp, выглядящая так:
user_id page timestamp
1234567 home.all 2018-03-01 00:10
7541231 task.now 2018-03-01 03:51
7541231 home.all 2018-03-01 03:53
4544731 talk.wow 2018-03-01 04:56
4544731 task.now 2018-03-01 05:01
4544731 home.all 2018-03-01 05:02
4544731 bla.home 2018-03-01 05:26
4544731 home.all 2018-03-01 06:40
Отметка времени — это время, когда пользователь с данным идентификатором загрузил данную страницу на веб-сайте. Каждое наблюдение — это просмотр страницы.
Мне нужно назначить идентификатор сеанса для каждого наблюдения. Каждый идентификатор сеанса должен быть уникальным для каждого сеанса, где сеанс — это группа просмотров страниц, где ближайшие друг к другу временные метки имеют разницу во времени не более 3600 секунд, произошедшие от одного и того же user_id эм>.
Результат должен выглядеть так:
user_id page timestamp session_id
1234567 home.all 2018-03-01 00:10 1234567-2018030100100010
7541231 task.now 2018-03-01 03:51 7541231-2018030103510353
7541231 home.all 2018-03-01 03:53 7541231-2018030103510353
4544731 talk.wow 2018-03-01 04:56 4544731-2018030104560526
4544731 task.now 2018-03-01 05:01 4544731-2018030104560526
4544731 home.all 2018-03-01 05:02 4544731-2018030104560526
4544731 bla.home 2018-03-01 05:26 4544731-2018030104560526
4544731 home.all 2018-03-01 06:40 4544731-2018030106400640
Не могли бы вы предложить какой-либо запрос для этого?