PySpark:如何在不同的键上连接两个表,并从每个表中获取所有列?

PySpark:如何在不同的键上连接两个表,并从每个表中获取所有列?,pyspark,Pyspark,我试图在pyspark中连接两个数据帧,但无法在结果中显示第二个数据帧的列: df_a.withColumn("loc", f.col("ORIGIN")).join(df_b.withColumn("loc", f.col("call2")), on="loc")\ .select([x for x in df_a.columns] + [x for x in df_b.columns]) 如

我试图在pyspark中连接两个数据帧,但无法在结果中显示第二个数据帧的列:

df_a.withColumn("loc", f.col("ORIGIN")).join(df_b.withColumn("loc", f.col("call2")), on="loc")\
.select([x for x in df_a.columns] + [x for x in df_b.columns])
如果我手动指定每一列,它将工作,但其繁琐:

df_a.withColumn("loc", f.col("ORIGIN")).join(df_b.withColumn("loc", f.col("call2")), on="loc")\
.select([x for x in df_a.columns] + ['latitude'] + ['longitude'] + etc....)

提前感谢您的帮助

请提供更多的代码,最好是一个最小的复制。df_a和df_b是什么样子的,您期望得到什么输出,以及您实际获得了什么输出?您也可以尝试执行
df_a.join(df_b,df_a.ORIGIN==df_b.call2)。选择('*')
谢谢--我有一个小错误!