【踩坑】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
相关推荐
2501_9481142415 小时前
2026年大模型API聚合平台技术评测:企业级接入层的治理演进与星链4SAPI架构观察
大数据·人工智能·gpt·架构·claude
黎阳之光15 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
专注API从业者17 小时前
淘宝商品详情 API 与爬虫技术的边界:合法接入与反爬策略的技术博弈
大数据·数据结构·数据库·爬虫
V搜xhliang024617 小时前
AI大模型在临床决策与手术机器人领域的应用
大数据·人工智能·机器人
A__tao17 小时前
Elasticsearch Mapping 一键生成 Proto 文件(支持嵌套 + 注释过滤)
大数据·elasticsearch·jenkins
Gofarlic_OMS18 小时前
装备制造企业Fluent许可证成本分点典型案例
java·大数据·开发语言·人工智能·自动化·制造
程序员雷欧18 小时前
大模型应用开发学习第八天
大数据·人工智能·学习
liukuang11018 小时前
伊利、蒙牛、飞鹤与光明乳业:存量时代的攻守之道与价值分化
大数据·人工智能·物联网
supericeice19 小时前
创邻科技 AI智算一体机:支持 DeepSeek 671B 与 Qwen3 单机部署,覆盖纯CPU到多GPU多机扩展
大数据·人工智能·科技