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

如何在Athena中将指定格式日期转换为YYYYMMDD格式?

Athena日期格式转换解决方案

针对你遇到的Nov 29, 2022 11:26:00 PM格式日期转YYYYMMDD的需求,可以通过Athena支持的Presto SQL函数两步实现:

  1. 解析字符串为日期类型:用date_parse函数按照原格式解析成timestamp
  2. 格式化为目标格式:用date_format转成YYYYMMDD字符串,或进一步转成整数

核心SQL示例

转成字符串格式

SELECT date_format(date_parse(your_date_column, '%b %d, %Y %h:%i:%s %p'), '%Y%m%d') AS formatted_date
FROM your_table;

转成整数格式

SELECT CAST(date_format(date_parse(your_date_column, '%b %d, %Y %h:%i:%s %p'), '%Y%m%d') AS INTEGER) AS formatted_date_int
FROM your_table;

格式符说明

  • %b:匹配缩写月份(如Nov)
  • %d:匹配两位日期(如29)
  • %Y:匹配4位年份(如2022)
  • %h:匹配12小时制的小时(如11)
  • %i:匹配两位分钟(如26)
  • %s:匹配两位秒数(如00)
  • %p:匹配AM/PM标识

异常处理

如果数据表中存在格式不规范的日期值,可使用try函数包裹解析逻辑,避免查询报错:

SELECT date_format(try(date_parse(your_date_column, '%b %d, %Y %h:%i:%s %p')), '%Y%m%d') AS formatted_date
FROM your_table;

解析失败的行将返回null,不会中断整个查询。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 12:52:10