在hive中将2016-08-27字符串转换为日期

时间:2017-09-13 21:16:12

标签: date hive unix-timestamp

我使用下面的代码将其转换为日期格式,但我的输出始终为null。

select from_unixtime(unix_timestamp(b.temp,'yyyyMMdd'), 'yyyyMMdd') as temp1
from 
([![enter image description here][1]][1]
select a.*, regexp_replace(a.ao_date,'-','') as temp
from clla_samp_base a
) b ;

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

2016-08-27采用ISO日期格式,这是Hive“可以接受”的唯一日期格式。

hive> select cast ('2016-08-27' as date) as dt; 
OK
dt
2016-08-27

P.S。
如果您有以此格式包含值的列,则可以首先将列类型定义为DATE。