【发布时间】:2015-01-14 12:26:05
【问题描述】:
我们在 Hive 中存储了一个时间戳纪元列 (BIGINT)。 我们想得到这个时代的日期'yyyy-MM-dd'。 问题是我的时代以毫秒为单位,例如1409535303522。 所以选择时间戳,from_unixtime(timestamp,'yyyy-MM-dd') 给出错误的日期结果,因为它期望以秒为单位的纪元。
所以我尝试将其除以 1000。但随后它被转换为 Double,我们无法对其应用函数。当我尝试将此双精度转换为 Bigint 时,即使 CAST 也不起作用。
【问题讨论】:
-
如果将格式更改为'yyyy-MM-dd HH:mm:ss.SSS'?
标签: hive unix-timestamp epoch milliseconds