Spark SQL-IN子句 [英] Spark SQL - IN clause

查看:1288
本文介绍了Spark SQL-IN子句的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想为DataFrame中具有多个值的列添加where条件.

I would like to add where condition for a column with Multiple values in DataFrame.

例如,它适用于单个值.

Its working for single value, for example.

df.where($"type".==="type1" && $"status"==="completed").

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

How can i add multiple values for the same column like below.

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

推荐答案

您要查找的方法是isin:

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

通常,您想要执行类似的操作

Typically, you want to do something like this

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

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

这篇关于Spark SQL-IN子句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆