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

谢谢您。我找到了解决办法