SUPER MID-YEAR SALE! DISKON 96%
Belajar Data Science 6 Bulan hanya 150K!

0 Hari 3 Jam 4 Menit 44 Detik

Perbedaan SQL GROUP BY ROLLUP dan Operator CUBE

Belajar Data Science di Rumah 28-September-2023
https://dqlab.id/files/dqlab/cache/3-longtail-rabu-06-2023-09-29-140304_x_Thumbnail800.jpg

SQL memiliki operasi yang bisa mengelompokkan setiap baris data berdasarkan nilai tertentu. Salah satunya adalah SQL Group By. SQL GROUP BY adalah klausa dalam pernyataan SQL yang digunakan untuk mengelompokkan baris-baris data dalam hasil query berdasarkan nilai-nilai tertentu dalam satu atau beberapa kolom.


Ini memungkinkan Anda untuk melakukan agregasi atau operasi agregat, seperti SUM, COUNT, AVG, MAX, atau MIN, pada setiap kelompok data yang terbentuk oleh hasil GROUP BY.


Dalam penerapan SQL Group By, terdapat fitur tambahan untuk melakukan agregasi data. Operator ROLLUP dan CUBE adalah dua fitur tambahan yang digunakan bersama dengan pernyataan SQL GROUP BY untuk melakukan agregasi data dalam berbagai tingkat hierarki atau untuk menghasilkan hasil agregat yang lebih komprehensif.


Keduanya dapat digunakan dengan pernyataan GROUP BY, tetapi memiliki efek yang berbeda dalam hasil agregasi. Untuk lebih jelas, berikut adalah perbedaan antara SQL GROUP BY dengan operasi ROLLUP dan CUBE. Simak yuk sahabat DQLab!

 

1. Apa itu ROLLUP dalam SQL

Operator ROLLUP pada SQL digunakan untuk membuat hasil agregat dengan mempertahankan hierarki kolom yang ditentukan dalam urutan tertentu. ROLLUP menghasilkan subtotal untuk kombinasi kolom yang diberikan bersama dengan subtotal untuk kolom individu.


Hasilnya memiliki tingkat agregasi yang lebih tinggi untuk setiap tingkat hierarki yang diidentifikasi dalam urutan ROLLUP. Contoh “GROUP BY ROLLUP (Kolom1, Kolom2, Kolom3) akan menghasilkan subtotal untuk Kolom1, Kolom1 & Kolom2, dan Kolom1 & Kolom2 & Kolom3”


SQL

Sumber Gambar: Linux Hint


Baca juga : Bootcamp Data Analyst with SQL and Python


2. Apa itu Operator CUBE

Operator CUBE digunakan untuk membuat hasil agregat dengan menghasilkan semua kombinasi yang mungkin dari kolom yang diberikan. Hal ini menghasilkan subtotal untuk semua kombinasi yang mungkin dari kolom tersebut, termasuk kolom individu. Hasilnya mencakup semua kemungkinan kombinasi yang ada dalam grup yang dihasilkan oleh pernyataan GROUP BY.


Contoh: GROUP BY CUBE (Kolom1, Kolom2, Kolom3) akan menghasilkan subtotal untuk Kolom1, Kolom2, Kolom3, Kolom1 & Kolom2, Kolom1 & Kolom3, Kolom2 & Kolom3, dan Kolom1 & Kolom2 & Kolom3.


3. Contoh Operasi ROLLUP dalam SQL

Misalkan Anda memiliki tabel "penjualan" dengan beberapa kolom seperti "Tahun," "Bulan," "Produk," dan "JumlahPenjualan" yang mencatat penjualan produk pada berbagai tingkat hierarki. Anda ingin menggunakan ROLLUP untuk menghasilkan hasil agregat berdasarkan tahun, bulan, dan produk.

SQL


Dengan query di atas, Anda akan mendapatkan hasil agregat yang mencakup subtotal untuk kombinasi Tahun, Bulan, dan Produk, serta subtotal untuk Tahun dan Bulan, serta total keseluruhan. Hasilnya akan mencerminkan hierarki kolom yang disebutkan dalam urutan ROLLUP.


Contoh hasil query di atas:

SQL


Dalam hasil di atas, Anda dapat melihat subtotal untuk kombinasi Tahun, Bulan, dan Produk, subtotal untuk Tahun dan Bulan, serta total keseluruhan. Pemakaian NULL menunjukkan subtotal untuk semua nilai dalam kolom tersebut.


Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data


4. Contoh Operasi Cube Operator dalam SQL

Misalkan Anda memiliki tabel "penjualan" dengan beberapa kolom seperti "Tahun," "Bulan," "Produk," dan "JumlahPenjualan" yang mencatat penjualan produk pada berbagai tingkat hierarki. Anda ingin menggunakan CUBE untuk menghasilkan hasil agregat berdasarkan tahun, bulan, dan produk.

SQL


Dengan query di atas, Anda akan mendapatkan hasil agregat yang mencakup subtotal untuk semua kombinasi yang mungkin dari Tahun, Bulan, dan Produk, serta subtotal untuk Tahun dan Bulan, Tahun dan Produk, Bulan dan Produk, dan subtotal untuk Tahun, Bulan, dan total keseluruhan.


Contoh hasil query di atas:

SQL


Dalam hasil di atas, Anda dapat melihat subtotal untuk semua kombinasi yang mungkin dari Tahun, Bulan, dan Produk, serta subtotal untuk kombinasi Tahun dan Bulan, Tahun dan Produk, Bulan dan Produk, dan total keseluruhan.


Penggunaan NULL menunjukkan subtotal untuk semua nilai dalam kolom yang sesuai. Ini memungkinkan Anda untuk menghasilkan hasil agregat yang lebih komprehensif dari data yang diberikan dengan semua kombinasi yang mungkin.


Bingung belajar SQL mulai darimana? Eits, kamu gak perlu bingung harus belajar SQL dimana karena DQLab juga menyediakan modul SQL yang sangat cocok bagi pemula.


DQLab merupakan platform belajar online yang berfokus pada pengenalan Data Science & Artificial Intelligence (AI) dengan menggunakan bahasa pemrograman populer, serta platform edukasi pertama yang mengintegrasi fitur Chat GPT. Selain itu DQLab juga menggunakan metode HERO yaitu Hands-On, Experiential Learning & Outcome-based, yang dirancang ramah untuk pemula. 


Selain itu, Bootcamp Data Analyst with SQL and Python juga termasuk kelas yang direkomendasikan bagi pemula yang ingin melakukan pembelajaran data untuk menjadi seorang Data Analyst. Tentunya nanti kita akan dihadapkan dengan study case yang bisa menambah portfolio data.


Untuk mendapatkan pengalaman belajar menarik, buruan sign up di DQLab. Daftar sekarang dan kejar impianmu untuk menjadi Data Analyst!


Penulis: Reyvan Maulid

Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login