pyspark在spark sql中函数之间的使用范围

Posted

技术标签:

【中文标题】pyspark在spark sql中函数之间的使用范围【英文标题】:pyspark use range between function in spark sql 【发布时间】:2019-07-11 15:12:37 【问题描述】:

当我跑步时

spark.sql(''' 
        select client,avg(amount) over (partition by client
         order by my_timestamp
         range between interval 30 days preceding and current row) as moving_avg_amount
         from my_table''')

它有效。

但如果我想排除最后 X 天 - 它会失败。

... range between interval 30 days preceding and 12 days preceding ..
   or :
 ... range between interval 30 days preceding and interval 12 days preceding .. 

正确的语法是什么?

【问题讨论】:

【参考方案1】:

在Spark SQL Window over interval of between two specified time boundaries - between 3 hours and 2 hours ago 中建议范围间隔在 SparkSQL 中不能正常工作。

【讨论】:

感谢@RickyG,看来这是一个老错误了,不明白为什么它没有得到修复......

以上是关于pyspark在spark sql中函数之间的使用范围的主要内容,如果未能解决你的问题,请参考以下文章

当 python 函数比它们快时,为啥我们使用 pyspark UDF? (注。不用担心 spark SQL 命令)

PySpark sql 中一些函数的总结(持续更新)

在 pyspark sql 中查找两个时间戳之间的差异

可从 PySpark/Python 调用的 Spark(2.3+)Java 函数 [重复]

PySpark - 为 SQL Server 使用 Spark 连接器

如何在 PySpark 中将 sql 函数与 UDAF 组合/链接