我想在给定的日期上添加任意天数,例如,我想在今天的日期上添加一天。
我有一个这样的数据帧:
------------
| date |
------------
|2020-10-01|
------------我想得到这样的数据帧:
------------
| date |
------------
|2020-10-02|
------------真正的代码被包裹在一个复杂的sql查询中,然后只有SQL语句才能得到有效的结果。
我试过这段代码,它试图得到今天的第二天,但由于date和int类型之间的差异,它不起作用,我想我正在寻找类似于python timedelta但在pyspark-sql中的东西
spark.sql(f"SELECT to_date(now()) + 1")错误:
cannot resolve '(to_date(current_timestamp()) + 1)' due to data type mismatch: differing types in '(to_date(current_timestamp()) + 1)' (date and int)发布于 2020-10-20 16:59:03
经过一段时间的搜索,我找到了一个可以解决这个问题的函数:
spark.sql("SELECT date_add(to_date(now()),1)").show()文档:
date_add(Column start, int days)
Returns the date that is days days after starthttps://spark.apache.org/docs/1.6.2/api/java/org/apache/spark/sql/functions.html
https://stackoverflow.com/questions/64441006
复制相似问题