union() Function

Returns all unique elements from the given arrays.

## Syntax

union( array1, array2, … )

array1: (Any Type Array) Array to combine.

array2: (Any Type Array) Array to combine.

## Returns

Any Type Array, matching the type of the inputs

## Examples

You can experiment with this function in the test box below.

Test Input

Find the superset of values from two integer arrays:

`union({1, 2, 3, 4}, {3, 4, 5, 6})` returns and array with `1, 2, 3, 4, 5, 6`

Remove the duplicates from an array by comparing it with an empty array of the same type:

`union({1, 2, 3, 4, 1, 2}, tointeger({}))` returns and array with `1, 2, 3, 4`

Values are matched with case sensitivity:

`union({"a", "b"}, {"a", "B"})` returns and array with `a, b, B`

Array types must match:

`union({"a", "b"}, {1, 2})` returns the following error: `Invalid types, can only act on data of the same type`.

NOTE: Use either the conversion functions or the `cast()` function to convert to the appropriate type.

union({"a", "b"}, tostring({1, 2})) returns and array with `a, b, 1, 2`

Null values are included as long as they are of the correct types (nulls of an incorrect type throw a type mismatch error):

`union({"a", "b"}, {"c", ""})` returns and array with `a, b, c, <null>`

Empty lists are ignored as long as they are of the correct types (empty lists of an incorrect type throw a type mismatch error):

`union(tointeger({}), {1, 2})` returns and array with `1, 2`

Scalar values are cast to arrays with a single entry:

`union(1, {2, 3})` returns and array with `1, 2, 3`

Every field of a CDT or dictionary must match to be treated as identical:

`union({a: 1, b: 2}, {a: 1, b: 2, c: 3})` returns `{{a: 1, b: 2}, {a: 1, b: 2, c: 3}}` `union({a: 1, b: 2}, {a: 1, b: 2})` returns `{{a: 1, b: 2}}`

Open in Github Built: Wed, Jan 12, 2022 (07:48:58 PM)