groupArray
groupArray
인자 값들의 배열을 만드는 집계 함수예요. 값들은 배열에 어떤(비결정적) 순서로든 추가될 수 있습니다. NULL 값은 결과에서 제거됩니다.
출처: 문서
본문
도입 버전: v1.1.0
인자 값들의 배열을 만듭니다. 값들은 배열에 어떤(비결정적) 순서로든 추가될 수 있습니다.
두 번째 버전(max_size 파라미터 사용)은 결과 배열의 크기를 max_size 요소로 제한합니다. 예를 들어 groupArray(1)(x)는 [any(x)]와 동일합니다.
어떤 경우에는 실행 순서에 계속 의존할 수 있습니다. 이는 SELECT가 ORDER 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'] │
└────┴──────────────────────┘