You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用HiveQL将数据表整列的Epoch Time转换为人类可读时间格式

如何使用HiveQL将数据表整列的Epoch Time转换为人类可读时间格式

嘿,刚好之前帮同事处理过一模一样的需求!用HiveQL把整列的Epoch秒级时间戳转成你想要的日/月/年 时:分:秒格式,只需要用到内置的from_unixtime()函数就搞定了,超简单。

核心思路

Hive的from_unixtime()函数专门用来把秒级Epoch时间戳转换成人类可读的日期字符串,你只需要指定想要的输出格式就行。函数的基本语法是:

from_unixtime(epoch_timestamp, 'desired_format')

针对你需求的具体实现

看你给出的表结构(假设表名叫job_time_table),要把time列的Epoch时间转成目标格式,直接写查询语句就行:

SELECT 
  job,
  from_unixtime(time, 'dd/MM/yyyy HH:mm:ss') AS human_readable_time
FROM job_time_table;

如果你想直接把转换后的结果更新回原表(比如新增一列存储可读时间),可以用以下操作:

-- 先新增一列用于存储转换后的时间
ALTER TABLE job_time_table ADD COLUMN human_time STRING;

-- 更新这列的值
UPDATE job_time_table 
SET human_time = from_unixtime(time, 'dd/MM/yyyy HH:mm:ss');

格式符说明(对应你要的格式)

  • dd:两位数字的日期(比如28)
  • MM:两位数字的月份(比如06)
  • yyyy:四位数字的年份(比如2028)
  • HH:24小时制的小时数(比如12)
  • mm:两位数字的分钟(比如49)
  • ss:两位数字的秒数(比如09)

验证你的示例数据

拿你给的第一条数据1877325549来测试,执行select from_unixtime(1877325549, 'dd/MM/yyyy HH:mm:ss');,得到的结果正好是你想要的28/06/2028 12:49:09,完全匹配!

备注:内容来源于stack exchange,提问作者Sai Sasidhar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 10:13:10