【踩坑】SparkSQL union/unionAll 函数的去重问题

【踩坑】SparkSQL union/unionAll 函数的去重问题

  • 测试数据
scala 复制代码
case class Employee(first_name:String)

val employeeDF1 = spark.createDataset(Seq( 
    Employee("Mary"), 
    Employee("Mandy"),
    Employee("Kurt")
))
val employeeDF2 = spark.createDataset(Seq( 
    Employee("Mary"), 
    Employee("Julie"), 
    Employee("Mandy"),
    Employee("Julie"), 
    Employee("Kurt")
))
  • 无论是union还是unionall都不会去重
scala 复制代码
employeeDF1.union(employeeDF2).show
scala 复制代码
employeeDF1.unionAll(employeeDF2).show
  • 当通过spark.sql执行方式时,union可以去重
scala 复制代码
employeeDF1.createOrReplaceTempView("ds1")
employeeDF2.createOrReplaceTempView("ds2")
scala 复制代码
spark.sql("select * from ds1 union select * from ds2").show
scala 复制代码
spark.sql("select * from ds1 union all select * from ds2").show
相关推荐
阿里云大数据AI技术29 分钟前
DataWorks :Data+AI 一体化开发实战图谱
大数据·数据分析
Shyllin38 分钟前
Hadoop NN和JN VERSION版本不一致
大数据·hadoop·分布式
随缘而动,随遇而安43 分钟前
第二十七篇 数据仓库与维度建模指南:从理论到实战的进阶之路
大数据·数据仓库·sql·数据库架构
HUIBUR科技1 小时前
从数据洪流到智能洞察:人工智能如何解锁大数据的价值?
大数据·人工智能·ai
2pi3 小时前
pyspark 遇到**Py4JJavaError** Traceback (most recent call last) ~\AppData\
python·spark
ui设计前端开发老司机3 小时前
在大数据开发中spark是指什么?
大数据
不爱学习的小枫3 小时前
sparksql的Transformation操作
spark
徐一闪_BigData4 小时前
Flink读取Kafka数据写入IceBerg(HiveCatalog)
大数据·flink·iceberg
大数据追光猿11 小时前
Tree of Thought Prompting(思维树提示)
大数据·人工智能·深度学习·计算机视觉·语言模型
z263730561112 小时前
Git 面试问题,解决冲突
大数据·git·elasticsearch