PENGELOMPOKAN (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analyticstitik akhir analitik SQL di Microsoft FabricWarehouse di Microsoft Fabric

Menunjukkan apakah ekspresi kolom tertentu dalam daftar GROUP BY dikumpulkan atau tidak. GROUPING mengembalikan 1 untuk agregat atau 0 untuk tidak dikumpulkan dalam tataan hasil. PENGELOMPOKAN hanya dapat digunakan dalam daftar pilih> SELECT<, HAVING, dan klausul ORDER BY saat GROUP BY ditentukan.

Konvensi sintaks transact-SQL

Sintaksis

GROUPING ( <column_expression> )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

<column_expression>
Adalah kolom atau ekspresi yang berisi kolom dalam klausa GROUP BY .

Jenis Kembalian

kecil

Keterangan

PENGELOMPOKAN digunakan untuk membedakan nilai null yang dikembalikan oleh ROLLUP, CUBE, atau GROUPING SETS dari nilai null standar. NULL yang dikembalikan sebagai hasil dari operasi ROLLUP, CUBE, atau GROUPING SETS adalah penggunaan khusus NULL. Ini bertindak sebagai tempat penampung kolom dalam tataan hasil dan berarti semua.

Contoh

Contoh grup SalesQuota dan jumlah agregat SaleYTD berikut dalam database AdventureWorks2022. Fungsi GROUPING diterapkan ke SalesQuota kolom.

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

Kumpulan hasil menunjukkan dua nilai null di bawah SalesQuota. Yang pertama NULL mewakili grup nilai null dari kolom ini dalam tabel. Yang kedua NULL ada di baris ringkasan yang ditambahkan oleh operasi ROLLUP. Baris ringkasan memperlihatkan TotalSalesYTD jumlah untuk semua SalesQuota grup dan ditunjukkan oleh 1 dalam Grouping kolom.

Berikut adalah hasil yang ditetapkan.

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)

Lihat Juga

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