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

AWS Athena的parse_datetime函数是否支持CET时区及简洁调用方式?

解答

更简洁写法说明

你当前使用的parse_datetime('2021-11-01 09 UTC', 'YYYY-MM-dd HH z') AT TIME ZONE 'CET'已经是通用场景下的最简合法写法,没有多余执行步骤。
如果你的输入字符串时区固定为UTC,可进一步简化为如下写法,执行结果完全一致:

SELECT with_timezone(parse_datetime('2021-11-01 09', 'YYYY-MM-dd HH'), 'UTC') AT TIME ZONE 'CET'

CET不被parse_datetime支持的原因

Presto的parse_datetime函数底层基于Java的时间格式化工具实现,时区缩写解析默认采用严格匹配规则,仅支持无歧义的全球通用时区缩写:

  • UTC、PST这类缩写属于全球统一、无多义性的时区标识,可直接被识别
  • CET、CEST这类时区缩写存在多义性(不同国家/地区曾使用相同缩写代表不同的时区偏移规则),默认未被纳入解析支持范围,因此直接传入CET作为待解析的时区标识会运行失败。

测试用例验证

你提供的测试用例运行结果符合上述逻辑:

SELECT parse_datetime('2021-11-01 09 UTC', 'YYYY-MM-dd HH z'), -- 运行正常
       parse_datetime('2021-11-01 09 UTC', 'YYYY-MM-dd HH z') AT TIME ZONE 'CET', -- 运行正常
       parse_datetime('2021-11-01 09 PST', 'YYYY-MM-dd HH z'), -- 运行正常
       parse_datetime('2021-11-01 09 CET', 'YYYY-MM-dd HH z') -- 运行失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 02:24:01