Pyspark DataFrames中的嵌套SELECT查询

时间:2016-03-09 10:53:41

标签: python sql select apache-spark pyspark

假设我在Pyspark中有两个DataFrame,并且我想在

行上运行嵌套的类似SQL的SELECT查询
SELECT * FROM table1
WHERE b IN
    (SELECT b FROM table2
     WHERE c='1')

现在,我可以使用where来实现选择查询,如

df.where(df.a.isin(my_list))

鉴于我事先选择了 my_list 元组值。我将如何一次性执行嵌套查询?

1 个答案:

答案 0 :(得分:1)

至于知道Spark不支持WHERE子句(SPARK-4226)中的子查询。没有收集的最接近的事情是joindistinct大致相当于:

SELECT DISTINCT table1.* 
FROM table1 JOIN table2
WHERE table1.b = table2.b AND table2.c = '1'