我想更新 spark-SQL 中存在的表中的一行,那么我该怎么做。例如,我的原始查询是,从学生设置标记 = 56 更新,其中 id = 1;
如何在 spark-SQL 中执行此操作?因为 spark-SQL 不支持更新。请帮忙。
Spark
SQL数据帧的核心是RDD,它们是不可变的,这意味着您无法更改(更新)它们。但是,通过在原始数据帧上应用用户定义函数 (UDF) 来生成新的 Spark SQL 数据帧,如下所示:
val my_udf=udf{(given_id:Int, given_marks:Int)=> if(given_id==5) 5 else given_marks}
val new_df= original_df.select(id,my_udf(id,marks))