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

AWS Athena如何查询January 2, 2020 8:15:32 AM UTC格式的日期

AWS Athena查询自定义格式日期字段的实现方法

你存储的日期格式如下:

January 2, 2020 8:15:32 AM UTC

实现步骤

Athena底层基于Presto SQL,你可以通过date_parse函数自定义格式规则,将字符串类型的日期转换为可比较的Timestamp类型,再做条件过滤即可。

1. 格式匹配规则

对应你给出的日期格式,转换用的匹配符规则如下:

  • %M:匹配英文全称月份(January/December等)
  • %e:匹配无前导零的日期(1/2/31等)
  • %Y:匹配4位年份
  • %r:匹配12小时制带AM/PM标识的时间(hh:mm:ss AM/PM格式)
  • 末尾直接匹配固定字符串UTC

2. 完整查询示例

假设你的表名为your_table,存储日期的字段名为raw_date,要查询该日期字段大于2020-01-01 00:00:00 UTC的所有行,完整SQL如下:

SELECT *
FROM your_table
WHERE date_parse(raw_date, '%M %e, %Y %r UTC') > TIMESTAMP '2020-01-01 00:00:00 UTC'

可选优化&注意事项

  • 若字段存在脏数据可能导致解析失败中断查询,可以用TRY函数包裹转换逻辑:TRY(date_parse(raw_date, '%M %e, %Y %r UTC')),解析异常时会返回NULL,不会影响查询执行。
  • 如果该日期字段查询频率较高,可以创建预计算视图提前完成日期转换,避免每次查询重复解析:
CREATE VIEW your_table_with_ts AS
SELECT 
  *,
  date_parse(raw_date, '%M %e, %Y %r UTC') AS event_utc_ts
FROM your_table

后续查询直接使用event_utc_ts字段做日期过滤即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 16:24:04