Scala 如何在内部联接之后更新数据帧,然后再进行左外部联接

Scala 如何在内部联接之后更新数据帧,然后再进行左外部联接,scala,apache-spark,Scala,Apache Spark,如何在内部联接之后更新数据帧,然后再进行左外部联接 需要转换的mysql查询 UPDATE SUD a LEFT OUTER JOIN (RS_DF b INNER JOIN prlesp ON b.cid = p.cid and p.PS = b.PS ) ON a.cid = p.cid AND a.id = b.aid val updated_

如何在内部联接之后更新数据帧,然后再进行左外部联接 需要转换的mysql查询

   UPDATE SUD a
   LEFT OUTER JOIN (RS_DF b 
                    INNER JOIN prlesp 
                    ON b.cid = p.cid 
                    and p.PS = b.PS ) 
ON a.cid = p.cid  
AND a.id = b.aid 

val updated_Df = RS_DF.join(prles_DF, prles(cid) <=>  RS_DF(aid) &&  prles(cid) <=>  RS_DF(aid),"INNER").select(*).join(.....)
更新SUD a
左外连接(RS_DF b
内连接prlesp
关于b.cid=p.cid
p.PS=b.PS)
关于a.cid=p.cid
a.id=b.aid
val updated_Df=RS_Df.join(prles_Df,prles(cid)RS_Df(aid)和&prles(cid)RS_Df(aid),“内部”)。选择(*)。join(…)

我无法理解如何从SUD_DF上的联接和左外联接获取所有值,并更新值火花数据帧是不可变的结构。无法更新数据帧。相反,您必须将数据帧转换为新的数据帧。然后,您可以将新的数据帧写入磁盘或其他数据存储。

有人能解决我的问题吗?