在hive中操作日期格式

xuo3flqw  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(491)

我的avro数据中有两种格式的日期2001-11-28t06:00:00.000z和10/20/09,我想将其转换为通用格式,如何在hive-0.10.0中实现这一点
我想把它转换成2015-01-01 00:00:00格式

mgdq6dx1

mgdq6dx11#

可以使用配置单元中的日期函数
像这样的 CAST(FROM_UNIXTIME(UNIX_TIMESTAMP(column,'your-format'),"<desired-format>")AS STRING) 有关更多帮助,请查看这里的日期函数

brc7rcf0

brc7rcf02#

我相信你是在一个单一的列中得到这两种格式,如果这种理解是正确的,创建 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;

相关问题