DC
create table sess (student Int64, events String, session_is_new Int8, session_number Int64 ) Engine=Log;
insert into sess values (1, 'ev1', 1, 1), (1, 'ev2', 0, 1), (1, 'ev3', 0, 1), (1, 'ev4', 1, 2);
insert into sess values (2, 'ev1', 1, 1);
SELECT student, sum(session_is_new) OVER (PARTITION BY student) session_number
from sess
┌─student─┬─x─┐
│ 1 │ 1 │
│ 1 │ 1 │
│ 1 │ 1 │
│ 1 │ 2 │
└─────────┴───┘
┌─student─┬─x─┐
│ 2 │ 1 │
└─────────┴───┘