我的Avro数据中包含2种格式 2001-11-28T06:00:00.000Z 和 10/20/09 的日期,我想转换此内容对于通用格式,我们如何在hive-0.10.0
中实现这一目标我想将其转换为 2015-01-01 00:00:00 格式
答案 0 :(得分:0)
可以使用配置单元中的日期函数
类似
CAST(FROM_UNIXTIME(UNIX_TIMESTAMP(column,'your-format'),"<desired-format>")AS STRING)
获取更多帮助,请查看此处Date Functions
答案 1 :(得分:0)
我相信你在一个列中获得两种格式,如果理解正确,则将input_column
创建为string
,如果表名为test
,则查询看起来像
select
if (instr(input_column,"/") != 0 ,
from_unixtime(UNIX_TIMESTAMP(input_column, "MM/dd/yy"),"yyyy-MM-dd HH:mm:ss") ,
from_unixtime(UNIX_TIMESTAMP(input_column, "yyyy-MM-dd'T'HH:mm:ss.S'Z'"),"yyyy-MM-dd HH:mm:ss"))
from test;