将时间戳值从字符串转换为时间戳配置单元

Convert timestamp value from string to timestamp hive

我在配置单元中创建的 table 中将时间戳值存储为字符串,并希望将其转换为时间戳类型。

我尝试了以下代码:

select date_value, FROM_UNIXTIME(UNIX_TIMESTAMP(date_value, 'dd-MMM-YY HH.mm.ss')) from sales limit 2;

原时间及结果如下:

   Original time              result

07-NOV-12 17.07.03      2012-01-01 17:07:03
25-FEB-13 04.26.53      2012-12-30 04:26:53

我的脚本有什么问题?

yy 而不是 YY

select  date_value
       ,FROM_UNIXTIME(UNIX_TIMESTAMP(date_value, 'dd-MMM-yy HH.mm.ss'))  as ts

from    sales
;

+--------------------+---------------------+
|     date_value     |         ts          |
+--------------------+---------------------+
| 07-NOV-12 17.07.03 | 2012-11-07 17:07:03 |
| 25-FEB-13 04.26.53 | 2013-02-25 04:26:53 |
+--------------------+---------------------+