我有一张下面有两列的表
hive> select * from hivetable;
a 2016-09-16T03:01:12.367782Z
b 2016-09-16T03:01:12.300514Z
c 2016-09-16T03:01:12.241532Z
a 2016-09-16T03:01:12.138016Z
c 2016-09-16T03:01:12.136986Z
b 2016-09-16T03:01:10.512201Z
c 2016-09-16T03:01:12.235671Z
Time taken: 0.457 seconds, Fetched: 7 row(s)
现在我想从第一列中找出唯一的值和时间戳差,或者我应该说平均时间戳差,如果有两个以上的记录,就像在c中一样。所以在我的例子中,输出应该是
a 1 day 5 hr 30 min 20 sec
b 5 sec
c 30 minutes
注意:它只是一个示例输出,而不是实际输出
有没有可能得到这个输出或任何类似的一个在Hive?
1条答案
按热度按时间crcmnpdw1#
您只需要使用一个窗口函数来选择分组中的前一行。我不相信它能被压缩成一个查询。