我看过讨论windows函数用法的帖子。但我有一些问题。
- 因为它只能在 HiveContext 中使用。鉴于我已经在使用 SparkSQLContext,如何在 SparkSQLContext 和 HiveContext 之间切换?
怎么可能在这里使用 windows 功能运行 HiveQL?我试过
df.registerTempTable("data") from pyspark.sql import functions as F from pyspark.sql import Window
%%hive SELECT col1, col2, F.rank() OVER (Window.partitionBy("col1").orderBy("col3") FROM data
和原生 Hive SQL
SELECT col1, col2, RANK() OVER (PARTITION BY col1 ORDER BY col3) FROM data
但它们都不起作用。