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

Posted

技术标签:

【中文标题】如何使用 HIVE 以其他格式更改或修改日期列值【英文标题】:How to change or modify date column value in another format using HIVE 【发布时间】:2014-09-16 22:58:54 【问题描述】:

我有一个包含日期列的表格。

早些时候,我以“2012 年 7 月 8 日”的格式插入了日期值。 - 月/日/年 我想以“07/08/2014”的形式更改此格式。 - mm/dd/yyyy

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

【问题讨论】:

【参考方案1】:

你可以使用 unix_timestamp(string date, string pattern) UDF。

让当前表为虚拟表。然后使用相同的模式创建一个新的最终表。然后使用以下命令插入到这个新表中:

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

【讨论】:

以上是关于如何使用 HIVE 以其他格式更改或修改日期列值的主要内容,如果未能解决你的问题,请参考以下文章

Hive 查询以使用其他列值的总和获取前 3 列值

怎么更改电脑日期格式

在 hive 中转换日期格式

MySQL查询列值更改的时间戳

php 以标准格式存储日期。使用访问器和更改器来修改日期格式

以 <旧值 - 新值 - 日期> 形式更改列值的历史记录