我正在寻找一种合理的方法,只用hive -1. 0的语法,来截断时间戳上的毫秒字段。我正在考虑的方法是:
cast(from_unixtime(second(cast([TIMESTAMP_IN_QUESTION] as string)), "yyyy:mm:dd:ss"), as timestamp)
但我相信这包括.00的毫秒字段在最后。是否有一个更好的方法来做到这一点?
hiz5n14c1#
首先,正确的时间戳格式是
yyyy-MM-dd HH:mm:ss.SSSSSS
默认情况下,不含毫秒的时间戳会以.00或.0结尾打印,因为它是时间戳的字符串表示
.00
.0
select substr('2020-01-01 12:10:10.123',1,19)
返回。
2020-01-01 12:10:10
1条答案
按热度按时间hiz5n14c1#
首先,正确的时间戳格式是
默认情况下,不含毫秒的时间戳会以
.00
或.0
结尾打印,因为它是时间戳的字符串表示返回。