如何使用HIVE以其他格式更改或修改日期列值

时间:2014-09-16 22:58:55

标签: hive hiveql

我的桌子有一个日期栏。

之前我已插入日期值,格式为'7/8/2012'。 - m / d / yyyy 我想以'07 / 08/2014'的形式更改此格式。 - mm / dd / yyyy

我的桌子上有大约3000个条目。如何将此日期值更改为新格式。 我尝试使用set的“alter”命令,但无法在批量中更改此命令。

1 个答案:

答案 0 :(得分:0)

您可以使用unix_timestamp(字符串日期,字符串模式)UDF。

让这个当前表成为一个虚表。然后使用相同的模式创建一个新的final表。然后使用以下命令插入此新表:

insert overwrite table table_name select coulmn1,column2,unix_timestamp(dateCOLUMN, string pattern) from old table.

您可以定义所需的任何日期模式。

参考:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctions