我有一张表格如下:
ID start_time end_time username
1 1451674800 1451692800 blah
我想要一张看起来像的表:
ID username hours
1 blah [11, 12, 13, 14, 15, 16]
其中[11,12,13,14,15,16]是一个数组,其值对应于小时(PST),介于1451674800和1451692800之间(UNIX时间)。
我的想法是我需要使用Hive的时间戳功能,但我对Hive非常不熟悉,尤其是时间戳功能,我甚至不知道从哪里开始。
答案 0 :(得分:1)
首先创建将UNIX时间转换为序数时间的函数。可以从here
获取然后计算DATEDIFF(hh,start_time,end_time)。从DATEPART(dd,start_time)开始添加这个小时数并连接它们。