본문으로 바로가기
본문으로 바로가기

groupArraySample

groupArraySample

도입 버전: v20.3

샘플로 추출된 인수 값의 배열을 생성합니다. 결과 배열의 크기는 max_size개의 요소로 제한됩니다. 인수 값은 무작위로 선택되어 배열에 추가됩니다.

구문

groupArraySample(max_size[, seed])(x)

매개변수

  • max_size — 결과 배열의 최대 크기입니다. UInt64
  • seed — 선택 사항입니다. 난수 생성기의 시드 값입니다. 기본값: 123456. UInt64
  • x — 인자(컬럼 이름 또는 표현식)입니다. Any

인자

  • array_column — 집계할 배열을 포함하는 컬럼입니다. Array

반환 값

무작위로 선택된 x 인자의 배열입니다. Array(T)

예시

사용 예시

CREATE TABLE default.colors (
    id Int32,
    color String
) ENGINE = Memory;

INSERT INTO default.colors VALUES
(1, 'red'),
(2, 'blue'),
(3, 'green'),
(4, 'white'),
(5, 'orange');

SELECT groupArraySample(3)(color) as newcolors FROM default.colors;
┌─newcolors──────────────────┐
│ ['white','blue','green']   │
└────────────────────────────┘

시드를 사용한 예

-- Query with column name and different seed
SELECT groupArraySample(3, 987654321)(color) as newcolors FROM default.colors;
┌─newcolors──────────────────┐
│ ['red','orange','green']   │
└────────────────────────────┘

표현식을 인자로 사용하기

-- Query with expression as argument
SELECT groupArraySample(3)(concat('light-', color)) as newcolors FROM default.colors;
┌─newcolors───────────────────────────────────┐
│ ['light-blue','light-orange','light-green'] │
└─────────────────────────────────────────────┘