Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Endpoint analityki SQL w Microsoft Fabric
Magazyn w Microsoft Fabric
Baza danych SQL w Microsoft Fabric
Wskazuje, czy określone wyrażenie kolumnowe w liście GROUP BY jest agregowane, czy nie. GROUPING daje 1 dla zbioru zagregowanego lub 0 dla niezagregowanego w zbiorze wyników. GROUPING może być używany tylko w klauzulach SELECT <> select, HAVING i ORDER BY, gdy określono GROUP BY.
Transact-SQL konwencje składni
Składnia
GROUPING ( <column_expression> )
Arguments
<column_expression>
Jest kolumną lub wyrażeniem, które zawiera kolumnę w klauzuli GROUP BY .
Typy zwracane
tinyint
Uwagi
GROUPING służy do odróżnienia wartości null zwracanych przez ROLLUP, CUBE lub GROUPING SETS od standardowych wartości null. NULL zwracany w wyniku operacji ROLLUP, CUBE lub GROUPING SETS jest specjalnym zastosowaniem NULL. Działa to jako zastępstwo kolumn w zbiorze wyników i oznacza wszystko.
Przykłady
Poniższy przykładowy przykład grupuje SalesQuota i agreguje SaleYTD kwoty w bazie AdventureWorks2025. Funkcja ta GROUPING jest stosowana do kolumny SalesQuota .
SELECT SalesQuota, SUM(SalesYTD) 'TotalSalesYTD', GROUPING(SalesQuota) AS 'Grouping'
FROM Sales.SalesPerson
GROUP BY SalesQuota WITH ROLLUP;
GO
Zbiór wyników pokazuje dwie wartości zerowe pod .SalesQuota Pierwsza NULL reprezentuje grupę wartości zerowych z tej kolumny w tabeli. Drugi NULL znajduje się w wierszu podsumowania dodanym przez operację ROLLUP. Wiersz podsumowujący pokazuje kwoty TotalSalesYTD dla wszystkich SalesQuota grup i jest oznaczony w kolumnie 1Grouping .
Oto zestaw wyników.
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)