27.
Spark : org.apache.spark.sql.AnalysisException: Reference 'XXXX' is ambiguous
这个问题是大多是因为,多个表join后,存在同名的列,在select时,取同名id,无法区分所致。
解决办法:
①对于列名相同的列,在DataFrame中更名。alias或withColumnRenamed可以实现,demo代码就暂时不提供。
②在join后,drop掉同名的列
df1.join(df2,df1.a == df2.a,'left_outer').drop(df2.a)
此贴来自汇总贴的子问题,只是为了方便查询。
总贴请看置顶帖:
pyspark及Spark报错问题汇总及某些函数用法。
https://blog.youkuaiyun.com/qq0719/article/details/86003435