Есть lag/lead практически в любой современной базе
neighbor()
если вопрос про collapsingMT судя по полю Sign -1 1, то ответ нет. Само оно не умеет такое считать. и так как значения схлопываются в любой момент, то не факт что строка -1 еще будет существовать в момент селект select key, dt, val, val_diff from (select key, (arraySort(i->i.1, groupArray( (dt, val) )) as g), arrayDifference(g.2) diffs from ( select 1 key, '2020-01-01' dt, 33 val union all select 1 key, '2020-01-02' dt, 44 val ) group by key) array join g.1 as dt, g.2 as val, diffs as val_diff ┌─key─┬─dt─────────┬─val─┬─val_diff─┐ │ 1 │ 2020-01-01 │ 33 │ 0 │ │ 1 │ 2020-01-02 │ 44 │ 11 │ └─────┴────────────┴─────┴──────────┘
Обсуждают сегодня