Data Rollup

Kadangkala saat kita bekerja dengan banyak data, muncul kebutuhan untuk dapat menjumlahkan (SUM) nilai dari beberapa record namun berasal dari hasil grouping. Misal pada sample yang saya bawakan ini menggunakan database Adventureworks.

 

Untuk mempermudah pengertian Data Rollup, kita persiapkan sebuah view yang menggambarkan hasil penjualan product-product yang dikelompokkan berdasarkan Category, Sub Category dan kelompok Product

image

Sehingga pada saat kita panggil view Sales.vSalesByCategory datanya akan tampak sebagai berikut :

image

Misalkan kita ingin mendapatkan nilai total penjualan untuk setiap product dapat dilakukan dengan melakukan Query berikut :

image

Hasil query diatas menunjukkan total penjualan setiap barang. lalu bagaimana jika kita ingin tahu nilai penjualan yang dikelompokkan berdasarakan Category, Category dan Sub Category, Category dan Subcategory dan Product ??

Nah disinilah peran dari data ROLLUP, dengan menyisipkan klausa WITH ROLLUP seperti berikut :

image

Sehingga data yang dihasilkan akan tampak seperti berikut :

image

Pada data yang mengalami nilai Category, subCategory serta Product nya NULL ini mengartikan bahwa total penjualan seluruh category adalah 140707584.8246

kemudian pada Category ‘Accessories’ yang memiliki nilai SubCategory dan Product nya NULL mengartikan bahwa total penjualan untuk seluruh Category ‘Accessories’ adalah 63583321.6767

Kemudian Nilai total Penjualan subCategory ‘Bike Racks’ untuk category ‘Accessories’ adalah 1210260.9025

dan demikian seterusnya.

Demikianlah pembahasan simple mengenai Data ROLLUP, semoga bermanfaat.

One thought on “Data Rollup

Leave a Reply