Date 配置单元自定义项字符串到日期的转换
配置单元包含包含以下数据的表“示例”:Date 配置单元自定义项字符串到日期的转换,date,hadoop,casting,hive,Date,Hadoop,Casting,Hive,配置单元包含包含以下数据的表“示例”: 15-06-2015 15-06-2015 15-06-2015 15-06-2015 15-06-2015 15-06-2015 16-06-2015 使用以下查询,我正在将字符串类型的数据转换为配置单元日期格式: select TO_DATE(from_unixtime(UNIX_TIMESTAMP(date,'DD-MM-YYYY'))) from sample; 结果如下: 0 2014-12-28 1 2014-12-28 2 2
15-06-2015
15-06-2015
15-06-2015
15-06-2015
15-06-2015
15-06-2015
16-06-2015
使用以下查询,我正在将字符串类型的数据转换为配置单元日期格式:
select TO_DATE(from_unixtime(UNIX_TIMESTAMP(date,'DD-MM-YYYY'))) from sample;
结果如下:
0 2014-12-28
1 2014-12-28
2 2014-12-28
3 2014-12-28
4 2014-12-28
5 2014-12-28
6 2014-12-28
输出与预期输出不同
请建议如何获得预期输出,如:
2015-06-15
2015-06-15
2015-06-15
2015-06-15
2015-06-15
2015-06-15
2015-06-16
您的问题是HiveQL通常不区分大小写,但是
unix\u timestamp
函数的第二个参数是区分大小写的。因此,查询的正确语法是:
select TO_DATE(from_unixtime(UNIX_TIMESTAMP(date,'dd-MM-yyyy'))) from sample;
这样,您将得到预期的结果。简单地说,输入的模式应该是
dd-MM-yyyy
谢谢您。我找到了解决办法