在Spark SQL中按多列进行分区

Eri*_*ner 7 window-functions apache-spark apache-spark-sql

使用Spark SQL的窗口函数,我需要按多列分区来运行我的数据查询,如下所示:

val w = Window.partitionBy($"a").partitionBy($"b").rangeBetween(-100, 0)

我目前没有测试环境(正在进行设置),但作为一个简单的问题,这是当前支持作为Spark SQL的窗口函数的一部分,还是这不起作用?

zer*_*323 17

这不行.第二个partitionBy将覆盖第一个.必须在同一个调用中指定两个分区列:

val w = Window.partitionBy($"a", $"b").rangeBetween(-100, 0)
Run Code Online (Sandbox Code Playgroud)