【问题标题】:How to get today - “6 months” date in PySpark(SQL) [duplicate]如何获取今天 - PySpark(SQL)中的“6个月”日期[重复]
【发布时间】:2018-12-19 07:30:48
【问题描述】:

我有每天更新的表格。我用这张表进行分析。我想要一个包含 6 个月数据的静态窗口作为分析的输入。

我知道我可以在 SQL 中制作这样的过滤器,以便每次运行代码时都有 6 个月的数据。

date >= dateadd(mm, -6, getdate())

有人可以建议我如何在 PySpark 中执行相同的操作。我只能这么想:

df.filter(col("date") >= date_add(current_date(), -6)))

提前致谢!

【问题讨论】:

    标签: python apache-spark filter pyspark pyspark-sql


    【解决方案1】:

    date_add 将增加或减少天数,在这种情况下使用 add_months 代替:

    import pyspark.sql.functions as F
    
    df.filter(F.col("date") >= F.add_months(F.current_date(), -6)))
    

    【讨论】:

      猜你喜欢
      • 2016-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-04
      • 2021-02-04
      相关资源
      最近更新 更多