ВСЕ в настоящее время недоступно с SPARK SQL.Он также не используется многими с SQL и может быть преобразован в другие подходы.
В этом случае MAX достигнет того же результата, как показано ниже:
import org.apache.spark.sql.expressions._
import org.apache.spark.sql.functions._
val df = sc.parallelize(Seq(
("John", "sh_clerk", 20000), ("Peter", "sh_clerk", 60000), ("Sally", "manager", 50000),
("Cabe", "programmer", 100000), ("Bob", "accountant", 65000)
)).toDF("first_name", "job_type", "salary")
df.createOrReplaceTempView("employees")
val res = spark.sql(""" SELECT first_name, job_type, salary
FROM employees
WHERE salary >
(SELECT MAX(salary) FROM employees WHERE job_type = 'sh_clerk')
ORDER BY salary""")
res.show(false)
возвращение:
+----------+----------+------+
|first_name|job_type |salary|
+----------+----------+------+
|Bob |accountant|65000 |
|Cabe |programmer|100000|
+----------+----------+------+