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

如何在Spark SQL API中将YYYY-MM-DD格式日期转换为YYYYMMDD格式

Spark SQL日期格式转换(YYYY-MM-DD转YYYYMMDD)纯SQL实现方案

以下两种方式均为原生Spark SQL语法,无需依赖DataFrame API或PySpark相关能力,直接在SQL语句中调用即可:

  • 方案1:使用date_format日期格式化函数(推荐,兼容性更强)
    该函数会自动识别合法的日期类输入(日期类型/可转换为日期的字符串),按照指定格式输出:

    -- 直接传入日期字符串示例
    SELECT date_format('2021-11-25', 'yyyyMMdd') AS formatted_date;
    
    -- 处理表字段的写法,加to_date更稳妥,避免隐式转换异常
    SELECT date_format(to_date(date_col), 'yyyyMMdd') AS formatted_date FROM your_table;
    

    输出结果为:20211125

  • 方案2:使用regexp_replace正则替换函数
    如果你确定输入的日期字符串严格遵循YYYY-MM-DD格式,没有其他异常格式,可以直接用正则替换删除横杠,写法更简洁:

    SELECT regexp_replace('2021-11-25', '-', '') AS formatted_date FROM your_table;
    

    输出结果同样为:20211125

注意:如果输入字段的日期格式非标准YYYY-MM-DD,建议在to_date函数中指定输入格式,比如to_date(date_col, 'yyyy-MM-dd'),避免不同环境下的日期解析规则差异导致报错。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 12:15:03