更新时间:2024-11-29 GMT+08:00

SQL语法兼容TIMESTAMP/DATE特殊字符

问题

在开源Spark 3.2.0版本之后,将不在支持TIMESTAMP(*)或DATE(*)的语法,其中 * 代表如下特殊时间字符:

  • epoch
  • today
  • yesterday
  • tomorrow
  • now

默认只支持timestamp '*' 或者data '*'的格式。如果,使用之前的语法,插入数据表,会得到NULL值。

解决方法

设置参数set spark.sql.convert.special.datetime=true; 即可兼容之前的语法。