GROUPING SETS
GROUP BY’ın, tek sorguda birden fazla farklı gruplamayı hesaplamanıza izin veren SQL uzantısı. UNION’lı birkaç SELECT çalıştırmak yerine örneğin ülke bazında, ürün bazında VE genel toplamı bir seferde alırsınız.
Sözdizimi: GROUP BY GROUPING SETS ((country), (product), ()) → üç toplulaştırma düzeyi içeren bir sonuç kümesi. Boş küme () genel toplamı verir. GROUPING() işlevi bir satırın hangi düzeye ait olduğunu söyler (“NULL = genel toplam” ile gerçek bir NULL değerini ayırt etmek için). Kullanım alanı: birden fazla boyutta aynı anda ara toplam gereken raporlar ve panolar. ROLLUP ve CUBE kısayollardır: ROLLUP hiyerarşik ara toplamlar, CUBE tüm kombinasyonları verir. SQL:1999 standardıdır; PostgreSQL, SQL Server, Oracle ve MySQL 8 destekler. Tabloyu ayrı toplulaştırmalarla birkaç kez okumaktan çok daha verimlidir.