Spark SQL - IN子句

时间:2016-10-24 12:28:59

标签: scala dataframe apache-spark-sql

我想在DataFrame中添加具有Multiple值的列的where条件。

例如,它适用于单值。

df.where($"type" IN ("type1","type2") && $"status" IN ("completed","inprogress")

如何为同一列添加多个值,如下所示。

{{1}}

1 个答案:

答案 0 :(得分:12)

您要查找的方法是isin

import sqlContext.implicits._
df.where($"type".isin("type1","type2") and $"status".isin("completed","inprogress"))

通常,你想做类似的事情

val types = Seq("type1","type2")
val statuses = Seq("completed","inprogress")

df.where($"type".isin(types:_*) and $"status".isin(statuses:_*))