Skip to main content
Edit this page

groupArraySample

サンプル引数値の配列を作成します。生成される配列のサイズは max_size 要素に制限されています。引数値はランダムに選択され、配列に追加されます。

構文

groupArraySample(max_size[, seed])(x)

引数

  • max_size — 生成される配列の最大サイズ。 UInt64
  • seed — 乱数生成器のシード。オプション。UInt64。デフォルト値: 123456
  • x — 引数(カラム名または式)。

返される値

  • ランダムに選ばれた x 引数の配列。

型: Array

テーブル colors を考えます:

┌─id─┬─color──┐
│ 1 │ red │
│ 2 │ blue │
│ 3 │ green │
│ 4 │ white │
│ 5 │ orange │
└────┴────────┘

カラム名を引数とするクエリ:

SELECT groupArraySample(3)(color) as newcolors FROM colors;

結果:

┌─newcolors──────────────────┐
│ ['white','blue','green'] │
└────────────────────────────┘

異なるシードを指定したカラム名を引数とするクエリ:

SELECT groupArraySample(3, 987654321)(color) as newcolors FROM colors;

結果:

┌─newcolors──────────────────┐
│ ['red','orange','green'] │
└────────────────────────────┘

式を引数とするクエリ:

SELECT groupArraySample(3)(concat('light-', color)) as newcolors FROM colors;

結果:

┌─newcolors───────────────────────────────────┐
│ ['light-blue','light-orange','light-green'] │
└─────────────────────────────────────────────┘