FAQ-spark3不支持解析current_date这种格式

问题描述/异常栈
执行select date_format(DATE_SUB(CURRENT_DATE(),1),'YYYYMMdd');语句时报错 报错信息: You may get a different result due to the upgrading of Spark 3.0: Fail to recognize 'YYYYMMdd' pattern in the DateTimeFormatter. 1) You can set spark.sql.legacy.timeParserPolicy to LEGACY to restore the behavior before Spark 3.0. 2) FAQ-Spark3不支持解析current_date这种格式 - 图1
发现版本

spark 3.1.2

解决方案
用to_date()进行转换一下,以上述查询sql为例 select to_date(DATE_SUB(CURRENT_DATE(),1),'YYYYMMdd'); FAQ-Spark3不支持解析current_date这种格式 - 图2
问题原因
spark2支持current_date这种时间解析,升级到spark3以上的版本不支持current_date这种时间解析,需要用to_date进行转换一下

作者:陈杰