Sha*_*kar 10 scala dataframe apache-spark-sql
我想在DataFrame中添加具有多个值的列的where条件.
例如,它为单值工作.
df.where($"type".==="type1" && $"status"==="completed").
Run Code Online (Sandbox Code Playgroud)
如何为同一列添加多个值,如下所示.
df.where($"type" IN ("type1","type2") && $"status" IN ("completed","inprogress")
Run Code Online (Sandbox Code Playgroud)
Rap*_*oth 16
您正在寻找的方法是isin:
import sqlContext.implicits._
df.where($"type".isin("type1","type2") and $"status".isin("completed","inprogress"))
Run Code Online (Sandbox Code Playgroud)
通常,你想做这样的事情
val types = Seq("type1","type2")
val statuses = Seq("completed","inprogress")
df.where($"type".isin(types:_*) and $"status".isin(statuses:_*))
Run Code Online (Sandbox Code Playgroud)