在 Apache Hive 中将日期格式转换为 YYYY-MM-DD HH:MIN:SEC

Date format conversion to YYYY-MM-DD HH:MIN:SEC in Apache Hive

我正在将数据从 csv 文件加载到配置单元 table。文件有一个名为 last_updated_date 的字段,其值的格式为“20200412013000771+0000”。 我需要将其转换为 "YYYY-MM-DD HH:MIN:SEC".

你可以用很多子串把它切碎然后用连接重建它,或者去掉最后不相关的字符并使用 unix_timestampfrom_unixtime.

由于您不关心毫秒数,因此您只需要前 14 个字符。以下是我的处理方式:

select from_unixtime (unix_timestamp(substring('20200412013000771+0000',1,14), 'yyyyMMddhhmmss'))

哪个returns

2020-04-12 01:30:00