다음을 통해 공유


grouping_id 기능

적용 대상: 예로 표시된 확인 Databricks SQL 예로 표시된 확인 Databricks Runtime

열 집합에 대한 그룹화 수준을 반환합니다.

구문

grouping_id( [col1 [, ...] ] )

인수

  • colN: GROUPING SET, ROLLUP 또는 CUBE에서 식별된 열 참조입니다.

반품

BIGINT입니다.

이 함수는 각 열을 비트 벡터로 조금씩 할당하여 여러 열에 대한 grouping 함수를 하나로 결합합니다. col1은 가장 높은 순서 비트로 표시됩니다. 행이 해당 열의 부분합을 계산하는 경우 비트는 1로 설정됩니다.

인수를 지정하지 않는 것은 GROUPING SET, CUBE 또는 ROLLUP에 나열된 모든 열을 지정하는 것과 같습니다.

예제

> SELECT name, age, grouping_id(name, age),
         conv(cast(grouping_id(name, age) AS STRING), 10, 2),
         avg(height)
    FROM VALUES (2, 'Alice', 165), (5, 'Bob', 180) people(age, name, height)
  GROUP BY cube(name, age)
Alice 2    0    0     165.0
Alice NULL 1    1     165.0
NULL  2    2   10     165.0
NULL  NULL 3   11     172.5
Bob   NULL 1    1     180.0
Bob   5    0    0     180.0
NULL  5    2   10     180.0