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

如何将SQL中的CONVERT日期转换语句改写为PySpark代码?

SQL转PySpark:生成yyyymm格式的日期

你的需求是把指定SQL转成PySpark代码,核心是生成yyyymm格式的两个月前日期,直接用PySpark的date_format函数就能一步到位,不用像SQL那样先转成完整日期再截断。

原SQL逻辑回顾

原SQL先把当前日期往前推2个月,再转成yyyymmdd格式后截取前6位得到yyyymm。PySpark里可以简化这个流程:

PySpark实现代码

from pyspark.sql.functions import current_date, add_months, date_format

# 给DataFrame新增目标列
df = df.withColumn("CURRENT_DATE", date_format(add_months(current_date(), -2), "yyyyMM"))

# 或者直接查询该字段
df.select(date_format(add_months(current_date(), -2), "yyyyMM").alias("CURRENT_DATE")).show()

关键说明

  • add_months(current_date(), -2):和你掌握的用法一致,获取当前日期往前推2个月的日期
  • date_format(日期, "yyyyMM"):直接将日期格式化为yyyyMM(即yyyymm)的字符串,一步得到你要的格式,无需额外截断操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 21:47:35