Pada MySQL, klausa
WITH ROLLUP digunakan bersamaan dengan klausa GROUP BY, WITH ROLLUP dapat digunakan baik untuk menghitung total maupun sub total sesuai dengan kolom yang kita gunakan dalam klausa GROUP BY.Kelebihan klausa ini adalah simpel dan dapat menghasilkan total dan subtotal hanya dalam satu query, sehingga membuat pekerjaan kita jauh lebih mudah dan sederhana.
Misal, untuk menyelesaikan pembuatan total dan subtotal sebagaimana contoh sebelumnya, kita hanya perlu menambahkan
WITH ROLLUP pada akhir query, sehingga querynya menjadi seperti ini:
SELECT thn_byr, id_pelanggan, id_produk, SUM(jml_byr) AS jml_byr
FROM `sales`
GROUP BY thn_byr, id_pelanggan, id_produk WITH ROLLUP
ketika kita jalankan query tersebut (menggunakan HEIDI SQL), hasil yang kita peroleh adalah:

jika kita perhatikan, MySQL melakukan tiga fungsi penjumlahan berdasarkan kolom yang ada di
group by
thn_byr.MySQL menambahkan baris baru untuk menjumlahkan kolomjml_byrperthn_byrdengan memberikan nilai NULL pada kolomid_pelanggandanid_produkthn_byrdanid_pelanggan.MySQL menambahkan baris baru untuk menjumlahkan kolomjml_byrper (thn_byrdanid_pelanggan)dengan memberikan nilai NULL pada kolomid_produkthn_byr,id_pelanggandanid_produk.MySQL menambahkan baris baru untuk menjumlahkan kolomjml_byruntuk per (id_produk,id_pelanggandanthn_byr)dengan memberikan nilai NULL pada kolomthn_byr,id_pelanggandanid_produk.
Komentar
Posting Komentar
Silakan dikomen...