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

Amazon Athena中YYYYMMDD格式字符串转日期失败求助

解决Athena中YYYYMMDD格式字符串转日期的问题

以下是几种可靠的解决方法,直接在Athena的SQL查询中使用即可:

  • 方法1:正确使用date_parse函数
    多数失败情况是因为格式字符串写错了,针对YYYYMMDD格式,必须用%Y%m%d作为格式参数:

    SELECT date_parse(your_date_column, '%Y%m%d') AS converted_date
    FROM your_table;
    

    注意:%Y代表4位年份,%m代表两位月份(01-12),%d代表两位日期(01-31),大小写不能混淆——比如%M会解析月份全称(如January),并非数字格式。

  • 方法2:拆分拼接后转日期
    如果date_parse仍有问题,可以手动拆分字符串为年、月、日,拼接成标准的YYYY-MM-DD格式后再转换:

    SELECT cast(
      concat(
        substr(your_date_column, 1, 4), '-',
        substr(your_date_column, 5, 2), '-',
        substr(your_date_column, 7, 2)
      ) AS date
    ) AS converted_date
    FROM your_table;
    
  • 方法3:通过时间戳转换
    借助to_unix_timestamp将字符串转成时间戳,再用from_unixtime转成日期:

    SELECT cast(from_unixtime(to_unix_timestamp(your_date_column, 'yyyyMMdd')) AS date) AS converted_date
    FROM your_table;
    

如果需要永久将该字段转为日期类型,可以用CTAS(Create Table As Select)创建新表,后续查询无需重复转换:

CREATE TABLE your_new_table
WITH (format = 'Parquet')
AS
SELECT
  -- 保留其他需要的字段
  date_parse(your_date_column, '%Y%m%d') AS converted_date
FROM your_table;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 21:36:05