다음을 통해 공유


GROUPING(Transact-SQL)

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance Azure Synapse Analytics Microsoft Fabric의 SQL 분석 엔드포인트 Microsoft Fabric의 웨어하우스

GROUP BY 목록에 지정된 열 식이 집계되었는지 여부를 나타냅니다. GROUPING은 집계된 경우 결과 집합에 1을 반환하고 집계되지 않은 경우 0을 반환합니다. GROUP BY 절이 지정된 경우 GROUPING은 SELECT <select> 목록, HAVING 및 ORDER BY 절에만 사용할 수 있습니다.

Transact-SQL 구문 표기 규칙

구문

GROUPING ( <column_expression> )  

인수

<column_expression>
GROUP BY 절에 열을 포함하는 열 또는 식입니다.

반환 형식

tinyint

설명

GROUPING은 ROLLUP, CUBE 또는 GROUPING SETS에서 반환된 Null 값과 표준 Null 값을 구분하기 위해 사용됩니다. ROLLUP, CUBE 또는 GROUPING SETS 작업의 결과로 반환되는 Null은 특별한 Null입니다. 이것은 결과 집합에서 열 자리 표시자로 사용되며 "모두"를 의미합니다.

예제

다음 예제에서는 AdventureWorks2022 SaleYTD 데이터베이스에서 금액을 그룹 SalesQuota 화하고 집계합니다. GROUPING 함수는 SalesQuota 열에 적용됩니다.

SELECT SalesQuota, SUM(SalesYTD) 'TotalSalesYTD', GROUPING(SalesQuota) AS 'Grouping'  
FROM Sales.SalesPerson  
GROUP BY SalesQuota WITH ROLLUP;  
GO  

결과 집합에는 SalesQuota 아래 2개의 Null 값이 있습니다. 첫 번째 NULL은 테이블에 있는 이 열의 Null 값 그룹을 나타냅니다. 두 번째 NULL은 ROLLUP 작업으로 추가된 요약 행에 있습니다. 요약 행은 모든 TotalSalesYTD 그룹의 SalesQuota 양을 보여 주고 1 열에서 Grouping로 표시됩니다.

결과 집합은 다음과 같습니다.

SalesQuota     TotalSalesYTD       Grouping  
------------   -----------------   --------  
NULL           1533087.5999          0  
250000.00      33461260.59           0  
300000.00      9299677.9445          0  
NULL           44294026.1344         1  

(4 row(s) affected)

참고 항목

GROUPING_ID(Transact-SQL)
GROUP BY(Transact-SQL)