【发布时间】:2018-12-05 18:47:01
【问题描述】:
我有以下 Spark DataFrame:
-
df1与列(id, name, age) -
df2与列(id, salary, city) -
df3与列(name, dob)
我想使用 Python 连接所有这些 Spark 数据帧。这是我需要复制的 SQL 语句。
SQL:
select df1.*,df2.salary,df3.dob
from df1
left join df2 on df1.id=df2.id
left join df3 on df1.name=df3.name
我使用 python 在 Pyspark 中尝试了如下所示的操作,但收到错误消息。
joined_df = df1.join(df2,df1.id=df2.id,'left')\
.join(df3,df1.name=df3.name)\
.select(df1.(*),df2(name),df3(dob)
我的问题:我们可以一次性加入所有三个 DataFrame 并选择所需的列吗?
【问题讨论】:
-
我需要python而不是scala的答案
-
df1.(*)语法无效。
标签: python pyspark pyspark-sql