groupArray

groupArray

인자 값들의 배열을 만드는 집계 함수예요. 값들은 배열에 어떤(비결정적) 순서로든 추가될 수 있습니다. NULL 값은 결과에서 제거됩니다.

출처: 문서

본문

도입 버전: v1.1.0

인자 값들의 배열을 만듭니다. 값들은 배열에 어떤(비결정적) 순서로든 추가될 수 있습니다.

두 번째 버전(max_size 파라미터 사용)은 결과 배열의 크기를 max_size 요소로 제한합니다. 예를 들어 groupArray(1)(x)[any(x)]와 동일합니다.

어떤 경우에는 실행 순서에 계속 의존할 수 있습니다. 이는 SELECTORDER BY를 사용하는 서브쿼리에서 오고, 그 서브쿼리의 결과가 충분히 작을 때 적용됩니다.

groupArray 함수는 결과에서 NULL 값을 제거합니다.

구문 (Syntax)

groupArray(x)
groupArray(max_size)(x)

별칭 (Aliases): array_agg

파라미터 (Parameters)

  • max_size — 선택 사항. 결과 배열의 크기를 max_size 요소로 제한합니다. UInt64

인자 (Arguments)

  • x — 배열에 수집할 인자 값들. Any

반환 값

인자 값들의 배열을 반환합니다. 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']           │
└────┴──────────────────────┘

더 알아보기 (Learn more)