Hive:将日期转换为整数

问题描述 投票:0回答:2

输入如下:

2017-07-03

预期输出如下:

20170703

我尝试了以下代码:

year(2017-07-03) * 10000 + month(2017-07-03) * 100 + day(2017-07-03))

有没有内置函数可以进行这种转换?

谢谢你

date hive int data-conversion
2个回答
0
投票

您可以使用

from_unixtime
unix_timestamp
cast
来执行此操作。

select cast(from_unixtime(unix_timestamp('2017-07-03','yyyy-MM-dd'),'yyyyMMdd') as int)

-1
投票

您可以按“-”进行拆分,然后再次连接回来。或者将“-”替换为“”。

regexp_replace("2017-07-03", "-", "")

参见如何替换 hive 中的字符?

© www.soinside.com 2019 - 2024. All rights reserved.