Skip to main content
Version: v1.17.0

union

Aggregate Function

union set union of input values

Synopsis

union(any) -> |[any]|

Description

The union aggregate function computes a set union of its input values. If the values are of uniform type, then the output is a set of that type. If the values are of mixed typs, the the output is a set of union of the types encountered.

Examples

Average value of simple sequence:

echo '1 2 3 3' | zq -z 'union(this)' -

=>

|[1,2,3]|

Continuous average of simple sequence:

echo '1 2 3 3' | zq -z 'yield union(this)' -

=>

|[1]|
|[1,2]|
|[1,2,3]|
|[1,2,3]|

Mixed types create a union type for the set elements:

echo '1 2 3 "foo"' | zq -z 'set:=union(this) | yield this,typeof(set)' -

=>

{set:|[1,2,3,"foo"]|}
<|[(int64,string)]|>