hive 1.0将时间戳截断到秒,将格式从 "yyyy:mm:dd:ss.ss "改为 "yyyy:mm:dd:ss"

ljsrvy3e  于 2021-04-05  发布在  Hive
关注(0)|答案(1)|浏览(722)

我正在寻找一种合理的方法,只用hive -1. 0的语法,来截断时间戳上的毫秒字段。
我正在考虑的方法是:

cast(from_unixtime(second(cast([TIMESTAMP_IN_QUESTION] as string)), "yyyy:mm:dd:ss"), as timestamp)

但我相信这包括.00的毫秒字段在最后。
是否有一个更好的方法来做到这一点?

hiz5n14c

hiz5n14c1#

首先,正确的时间戳格式是

yyyy-MM-dd HH:mm:ss.SSSSSS

默认情况下,不含毫秒的时间戳会以.00.0结尾打印,因为它是时间戳的字符串表示

select substr('2020-01-01 12:10:10.123',1,19)

返回。

2020-01-01 12:10:10

相关问题