проблема orderBy с оконной функцией - две нисходящие клавиши - PullRequest
0 голосов
/ 10 июля 2019

Я определяю некоторые функции Scala в записной книжке Zeppelin, и одна из них - это оконная функция, которая сортирует результат в порядке убывания по двум ключам сортировки, используя orderBy(). У меня импортированы следующие пакеты:

import org.apache.spark.sql.DataFrame
import org.apache.spark.sql.Column
import org.apache.spark.sql.expressions.Window
import org.apache.spark.sql.expressions.WindowSpec
import org.apache.spark.sql.functions.udf
import org.apache.spark.sql.types._
import org.apache.spark.sql.functions._

Рассматриваемая функция изначально была определена следующим образом (фактические переменные изменены):

val sortDesc = Window.partitionBy("my_id").orderBy(desc("date1"), 
desc("date2"))

Я получаю следующую ошибку:

<console>:85: error: ')' expected but 'val' found.
    val sortDesc = Window.partitionBy("my_id").orderBy(desc("date1"), 
desc("date2"))

Из предыдущих сообщений SO я пробовал следующее:

val sortDesc = Window.partitionBy($"my_id").orderBy($"date1".desc, 
$"date2".desc))
val sortDesc = Window.partitionBy("my_id").orderBy(col("date1").desc, 
col("date2").desc)
val sortDesc = Window.partitionBy("my_id").orderBy(col(date1).desc, 
col(date2).desc)

Все это привело к одному и тому же сообщению об ошибке. Оба столбца сортировки представляют собой даты в формате yyyy-mm-dd, если это уместно. Любая помощь в решении ошибки приветствуется - TIA.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...