Мои данные такие, статус 0 или 1, uid - идентификатор пользователя.
uid |timestamp |status
1 |1 | 0
2 |3 | 1
1 |2 | 1
2 |1 | 0
1 |3 | 1
2 |2 | 0
2 |4 | 0
Я хочу разделить данные по uid и упорядочить по отметке времени asc.
uid |timestamp |status
1 |1 | 0
1 |2 | 1
1 |3 | 1
2 |1 | 0
2 |2 | 0
2 |3 | 1
2 |4 | 0
И получите все последовательно один и тот же статус и соедините их, чтобы делать другие вещи.
Извините, мой английский ... дерьмо.
Результат такой, как показано ниже:
uid |status |timestamps-asc-order
1 |(0) | (1)
1 |(1,1) | (2,2)
2 |(0,0) | (1,2)
2 |(1) | (3)
2 |(0) | (4)
Я могу сделать раздел и заказать с оконной функцией.
Но тогда как получить последовательно такой же статус?
val window = Window.partitionBy("uid").orderBy($"timestamp".asc)