在 hive 中将时间格式从 'MM/dd/yyyy HH:mm:ss' 转换为 'MM-dd-yyyy' [关闭]

Posted

技术标签:

【中文标题】在 hive 中将时间格式从 \'MM/dd/yyyy HH:mm:ss\' 转换为 \'MM-dd-yyyy\' [关闭]【英文标题】:Convert time format from 'MM/dd/yyyy HH:mm:ss' to 'MM-dd-yyyy' in hive [closed]在 hive 中将时间格式从 'MM/dd/yyyy HH:mm:ss' 转换为 'MM-dd-yyyy' [关闭] 【发布时间】:2020-07-21 02:48:37 【问题描述】:

如何在 hive 中将时间格式从 06/23/2020 07:57:45 转换为 06-23-2020

【问题讨论】:

【参考方案1】:

使用split 和连接:

with your_data as (
select  '06/23/2020 07:57:45' as str
)

select concat_ws('-',splitted[0],splitted[1],splitted[2]) as Result
from
(
select split(str,'[/ ]') as splitted
  from your_data
)s

结果:

06-23-2020

使用from_unixtime(unix_timestamp(string, format_from), format_to)

select from_unixtime(unix_timestamp(str,'MM/dd/yyyy HH:mm:ss'),'MM-dd-yyyy') as Result
  from your_data

结果:

06-23-2020

【讨论】:

以上是关于在 hive 中将时间格式从 'MM/dd/yyyy HH:mm:ss' 转换为 'MM-dd-yyyy' [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在 hive 中将时间格式从 'MM/dd/yyyy HH:mm:ss' 转换为 'MM-dd-yyyy' [关闭]

如何在 hive 中将时间戳转换为 gmt 格式

在 hive 中将时间戳转换为 hive 格式时出错

在 Hive 中将字符串转换为日期/时间戳

如何在 Hive 或 Presto 中将以下字典格式列转换为不同的格式?

如何在 Presto/Hive 中将日期格式 YYYY-MM-DD 转换为整数 YYYYMMDD?