【踩坑】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
相关推荐
五度易链-区域产业数字化管理平台几秒前
从编制规范到落地应用,新版可研报告撰写全流程指南
大数据·人工智能
lauo9 分钟前
ibbot手机青春版:AI时代真正的生产力革命——从联想小新Air 13看智能设备的分水岭
大数据·人工智能·智能手机
器灵科技13 分钟前
DeepSeek V4 Pro宣称:超GPT-5.5+永久降价75%
大数据·人工智能·gpt·阿里云·ai·语言模型
yyoc9718 分钟前
本地 Flink on K8s + Iceberg + MinIO 实时数仓平台 — AI部署指南与踩坑实录
大数据·ai·flink·kubernetes·iceberg
阿坤带你走近大数据33 分钟前
flink的架构介绍
大数据·架构·flink
2501_9467862039 分钟前
2026算法分级分类备案TOP5解读——吃透差异化监管,规避过度合规风险
大数据
IPDEEP全球代理41 分钟前
TikTok为什么封号?应该怎么解决?(附IP环境解决方案)
大数据
专注于大数据技术栈1 小时前
什么是Trino?大数据统一联邦查询引擎详解
大数据·数据库
Nefu_lyh1 小时前
【Hive】 八、Hive 计算引擎:MapReduce / Tez / Spark 对比与选型
hive·spark·mapreduce
光锥智能2 小时前
赛豆:赛力斯的出路,火山引擎的标杆
大数据·人工智能·火山引擎