这不是最简单的解释,所以我会尽我所能,但请问你是否需要更多的澄清。
我使用的是hivesql,有一个包含用户和事件时间的表。如下面的rownum列所示,我要计算的是一个递增序列,它在4小时窗口内按用户和事件时间划分,在包含值的第一个事件时间4小时后重置。
所以在下表中。。。
用户a的所有记录都在00:01:00-04:00:00之间
用户b在第一个窗口00:01:00到04:01:00之间有3个事件,在第二个窗口04:08:00到08:08:00之间有2个事件
用户c在第一个00:01:00-04:01:00窗口中有2个事件,在第二个04:10:00-08:10:00窗口中有1个事件,在08:15:00-12:15:00窗口中有2个事件
任何帮助/指点都将不胜感激!!
| user | event_time | rownum |
|------|------------|--------|
| A | 00:01:00 | 1 |
| A | 00:02:00 | 2 |
| A | 02:30:00 | 3 |
| B | 00:01:00 | 1 |
| B | 00:02:00 | 2 |
| B | 02:30:00 | 3 |
| B | 04:08:00 | 1 |
| B | 04:10:00 | 2 |
| C | 00:01:00 | 1 |
| C | 00:02:00 | 2 |
| C | 04:10:00 | 1 |
| C | 08:15:00 | 1 |
| C | 08:17:00 | 2 |
暂无答案!
目前还没有任何答案,快来回答吧!