跳到主要内容

array_union:数组并集去重

速查结论

array_union(array1, array2) 是 Spark SQL 中用于计算两个数组的并集并自动去重的函数。

语法

array_union(array1, array2)

参数说明

参数类型说明
array1ARRAY第一个输入数组
array2ARRAY第二个输入数组

返回值

返回一个数组,包含 array1 和 array2 并集中的所有元素,且不包含重复项。元素的顺序不保证与输入一致。

示例

> SELECT array_union(array(1, 2, 3), array(1, 3, 5));
[1,2,3,5]

常见报错与避坑指南

  • null 值处理:如果任一输入数组为 null,函数将返回 null。使用 COALESCE 可以在输入为 null 时提供默认空数组。
  • 元素顺序不保证:输出数组中元素的顺序可能与输入数组不同,不要依赖输出数组的顺序。
  • 去重基于元素相等性:去重依赖于元素的相等比较,对于复杂数据类型(如 STRUCT),请确保理解其比较语义。

Since: 2.4.0

📱关注公众号

「数据仓库技术」文章同步更新,不错过每一篇干货

微信公众号二维码
💬加群交流

备注「数据仓库技术」加入社群,每日一道大厂SQL真题

交流微信二维码

你可能还想看