ReferenceSQL ReferenceAggregate Functions

groupArray

Creates an array of argument values.

Creates an array of argument values. Values can be added to the array in any (indeterminate) order.

The second version (with the max_size parameter) limits the size of the resulting array to max_size elements. For example, groupArray(1)(x) is equivalent to [any(x)].

In some cases, you can still rely on the order of execution. This applies to cases when SELECT comes from a subquery that uses ORDER BY if the subquery result is small enough.

The groupArray function will remove NULL values from the result.

Syntax

groupArray(x)
groupArray(max_size)(x)

Parameters

  • max_size — Optional. Limits the size of the resulting array to max_size elements. UInt64

Arguments

  • x — Argument values to collect into an array. Any

Returned value

Returns an array of argument values. Array

Examples

Basic usage

SELECT id, groupArray(10)(name) FROM default.ck GROUP BY id;
┌─id─┬─groupArray(10)(name)─┐
│  1 │ ['zhangsan','lisi']  │
│  2 │ ['wangwu']           │
└────┴──────────────────────┘

Introduced in version 1.1.