メインコンテンツへスキップ
メインコンテンツへスキップ

groupArray

構文: groupArray(x) または groupArray(max_size)(x)

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

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

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

SELECT * FROM default.ck;

┌─id─┬─name─────┐
│  1 │ zhangsan │
│  1 │ ᴺᵁᴸᴸ     │
│  1 │ lisi     │
│  2 │ wangwu   │
└────┴──────────┘

クエリ:

SELECT id, groupArray(10)(name) FROM default.ck GROUP BY id;

結果:

┌─id─┬─groupArray(10)(name)─┐
│  1 │ ['zhangsan','lisi']  │
│  2 │ ['wangwu']           │
└────┴──────────────────────┘

groupArray 関数は、上記の結果に基づいて ᴺᵁᴸᴸ 値を除去します。

  • エイリアス:array_agg