IMPALA日期格式 - 将完整时间戳转换为每小时时间戳

时间:2016-03-22 15:36:34

标签: datetime time format impala

我需要一个完整的时间戳列(格式:YYYY-MM-DD HH:MM:SS.SSSS)并将其转换为每小时时间戳(格式:YYYY-MM-DD HH:00:00

例如: 我想转换我现有的日期:

2016-02-26 04:00:07.766304000

成:

2016-02-26 04:00:00

我尝试使用unix_timestamp()from_unixtime()功能但是太混乱了:X

有人知道如何轻松做到吗?

非常感谢帮助者:)

1 个答案:

答案 0 :(得分:4)

您可以使用to_date()获取时间和小时()的日期以获取时间的小时,然后如果您不想使用unix_timestamp()或from_unixtime(),则将它们连接在一起。

假设'submit_time'看起来像'2016-02-26 04:00:07.766304000'。

concat(to_date(submit_time),' ',cast(hour(submit_time) as string),':00:00')

将给出答案。