使用类似SQL中的IN子句对Pyspark DataFrame进行过滤

20 浏览
0 Comments

使用类似SQL中的IN子句对Pyspark DataFrame进行过滤

我想用类似SQL的IN子句来过滤Pyspark DataFrame,如下所示:

sc = SparkContext()
sqlc = SQLContext(sc)
df = sqlc.sql('SELECT * from my_df WHERE field1 IN a')

其中a是元组(1, 2, 3)。但我遇到了如下错误:

java.lang.RuntimeException: [1.67] failure: ``('' expected but identifier a found

这个错误基本上是说它期望的是像'(1, 2, 3)'这样的内容,而不是a。

问题在于我不能手动写入a中的值,因为它是从另一个作业中提取的。

在这种情况下,我该如何进行过滤呢?

0