Datetime 在hive中将090216(字符串)转换为2009年2月16日(日期)

Datetime 在hive中将090216(字符串)转换为2009年2月16日(日期),datetime,hive,hiveql,Datetime,Hive,Hiveql,所以我试着改变信仰 0902160918(字符串) 进入 2009年2月16日 我目前的工作: SELECT date_format(from_unixtime(unix_timestamp(SUBSTR(DATE_TIME,1,6),'yyMMdd'),'yy-MMM-dd')) FROM table_name ; 转换此项的最佳实践是什么?我应该输入concat还是什么 所有的帮助或想法都会得到肯定。如果您修复了一些括号,您的查询也可以工作: select d

所以我试着改变信仰
0902160918(字符串)
进入
2009年2月16日

我目前的工作:

SELECT
  date_format(from_unixtime(unix_timestamp(SUBSTR(DATE_TIME,1,6),'yyMMdd'),'yy-MMM-dd'))    
FROM 
  table_name
      ;
转换此项的最佳实践是什么?我应该输入
concat
还是什么


所有的帮助或想法都会得到肯定。

如果您修复了一些括号,您的查询也可以工作:

select date_format(from_unixtime(unix_timestamp(substr(DATE_TIME, 1, 6) ,'yyMMdd')),'dd-MMM-yy') FROM table_name;


令人难以置信的是,人们仍然一年只存储两位数。你没听说过吗?没有。数据是其他的子查询,谢谢!评论不用于扩展讨论;这段对话已经结束。
select date_format(from_unixtime(unix_timestamp(DATE_TIME, 'yyMMddHHmm')),'dd-MMM-yy') FROM table_name;