Jika Anda menggunakan SQL Server 2008 atau versi yang lebih baru, Anda dapat menggunakan ROLLUP()
Fungsi GROUP BY:
SELECT
Type = ISNULL(Type, 'Total'),
TotalSales = SUM(TotalSales)
FROM atable
GROUP BY ROLLUP(Type)
;
Ini mengasumsikan bahwa Type
kolom tidak boleh memiliki NULL sehingga NULL dalam kueri ini akan menunjukkan baris rollup, baris dengan total keseluruhan. Namun, jika Type
kolom dapat memiliki NULL sendiri, jenis akuntansi yang lebih tepat untuk total baris akan seperti pada jawaban @Declan_K, yaitu menggunakan GROUPING()
fungsi:
SELECT
Type = CASE GROUPING(Type) WHEN 1 THEN 'Total' ELSE Type END,
TotalSales = SUM(TotalSales)
FROM atable
GROUP BY ROLLUP(Type)
;