Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

groupArray

groupArray

導入バージョン: v1.1.0

引数値からArrayを作成します。 値は任意の (不定な) 順序でArrayに追加されます。

2 番目のバージョン (max_size パラメータ付き) は、結果のArrayのサイズを max_size 要素に制限します。たとえば、groupArray(1)(x)[any(x)] と同等です。

場合によっては、実行順序に依存できることもあります。これは、SELECT の対象が ORDER BY を使用するサブクエリであり、そのサブクエリの結果が十分に小さい場合に当てはまります。

groupArray 関数は、結果から NULL 値を削除します。

構文

groupArray(x)
groupArray(max_size)(x)

別名: array_agg

パラメータ

  • max_size — 任意。結果のArrayの要素数を max_size に制限します。UInt64

引数

  • x — Arrayにまとめる引数値。Any

戻り値

引数値からなるArrayを返します。Array

基本的な使い方

CREATE TABLE ck (id UInt8, name String) ENGINE = Memory;
INSERT INTO ck VALUES (1, 'zhangsan'), (1, 'lisi'), (2, 'wangwu');

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