我在hive中创建的表中将时间戳值存储为字符串,并希望将其转换为时间戳类型。
我尝试了以下代码:
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
我的剧本出了什么问题?
答案 0 :(得分:3)
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 |
+--------------------+---------------------+