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

Hive/Presto中如何将yyyy-MM-dd HH:mm:ss.SSS转为yyyy-MM-dd日期

Hive/Presto 带毫秒的Datetime转日期格式解决方案

Hive环境处理方式

如果created_dt是字符串类型:

  • 直接用to_date函数即可,无需额外转换:
to_date(created_dt) AS date_column

或者通过时间戳转换(毫秒部分可忽略,unix_timestamp能识别到秒级):

from_unixtime(unix_timestamp(created_dt, 'yyyy-MM-dd HH:mm:ss.SSS'), 'yyyy-MM-dd') AS date_column

如果created_dt是datetime类型,直接强制转换:

cast(created_dt AS date) AS date_column

Presto环境处理方式

如果created_dt是字符串类型:

  • 先解析为timestamp再转date:
date(date_parse(created_dt, '%Y-%m-%d %H:%i:%s.%f')) AS date_column

或者直接调用to_date,Presto原生支持解析带毫秒的日期字符串:

to_date(created_dt) AS date_column

如果created_dt是timestamp类型,直接转换:

cast(created_dt AS date) AS date_column

你之前尝试的问题点

  • format_datetime(created_dt,'YYYY-mm-dd'):格式符错误,mm代表分钟,月份需用MM,正确写法为format_datetime(created_dt,'yyyy-MM-dd')(Presto对应函数为date_format)
  • to_date(str created_dt):语法错误,无需str关键字,直接写to_date(created_dt)
  • date(created_dt):Hive中date()仅支持timestamp类型入参,若列是字符串会报错;Presto可直接用,但需确保字符串格式标准

内容的提问来源于stack exchange,提问作者PRITHVI ANAND

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 22:57:33