【发布时间】:2018-09-08 20:29:44
【问题描述】:
我有一个纪元日期时间字段,它作为字符串存储在数据库表中。我需要将其转换为 impala sql 中的时间戳。 我正在使用以下格式并且无法正常工作。 cast(unix_timestamp(execn_start_ts, "yyyy-MM-dd;HH:mm:ss") as timestamp) 其中 execn_start_ts 是我的表中的字段,其中 unix/epoch 时间存储为字符串。
【问题讨论】:
我有一个纪元日期时间字段,它作为字符串存储在数据库表中。我需要将其转换为 impala sql 中的时间戳。 我正在使用以下格式并且无法正常工作。 cast(unix_timestamp(execn_start_ts, "yyyy-MM-dd;HH:mm:ss") as timestamp) 其中 execn_start_ts 是我的表中的字段,其中 unix/epoch 时间存储为字符串。
【问题讨论】:
尝试使用
unix_timestamp(字符串日期时间,字符串格式)
【讨论】:
如果您的纪元时间 ms 提供,以下方法会保留 ms 信息。
select CAST(CAST(ms_epoch_time as BIGINT) / 1000 AS TIMESTAMP)
as new_timestamp
from db.some_tabl_name
--ms_epoch_time - 1608249590791
--new_timestamp - 2020-12-17 23:59:50.790999889
【讨论】: