SQL Group By untuk Manajemen Database
SQL adalah salah satu bahasa yang sering digunakan oleh praktisi data untuk mengakses database. Syntax yang digunakan mudah untuk dipahami dan sangat membantu mengefisienkan waktu jika dibutuhkan data tertentu dalam ribuan data yang dimiliki. Bayangkan jika kita hanya memerlukan data karyawan yang bekerja di departemen tertentu dengan status sebagai freelance. Sedangkan data karyawan sangat banyak dengan spesifikasi masing-masing. Jika pencarian data dilakukan secara manual tentunya tidak praktis, membuang waktu, dan outputnya belum tentu benar karena ada faktor human error.
SQL memiliki fungsi yang beragam bergantung pada kebutuhan dan tujuannya. Salah satu fungsi SQL yang sering digunakan adalah Group By. Fungsi SQL Group By secara sederhana digunakan untuk menggabungkan data menjadi daftar nilai tunggal yang memenuhi beberapa kriteria. Nah ternyata ada beberapa fakta menarik yang bisa Sahabat DQ pelajari lebih lanjut selain fungsi dari Group By itu sendiri. Apa saja? Yuk simak pembahasannya!
1. Mengenal Group By Pada SQL
Group By pada SQL berfungsi untuk menggabungkan beberapa data dengan nilai yang sama untuk spesifik kondisi menjadi satu data. Group By sangat sering digunakan saat kalian melakukan agregasi suatu nilai. Agar lebih mudah memahami fungsi Group By, perhatikan tabel berikut. Misalnya diketahui tabel ‘countries’ yang berisi informasi kondisi suatu negara.
Kita akan menggunakan Group By serta fungsi agregat untuk mengetahui jumlah negara untuk setiap benua.
Sehingga akan diperoleh hasil seperti berikut ini.
Dasar dari cara kerja Group By SQL adalah:
Group By X artinya menggabungkan semua data yang memiliki nilai sama pada X ke dalam baris yang sama.
Group By X dan Y artinya menggabungkan semua data yang memiliki nilai sama pada X dan Y ke dalam baris yang sama.
Dari contoh di atas, semua negara yang berasal dari benua Afrika dihitung (fungsi count) atau dikelompokkan menjadi satu ke dalam benua Afrika. Ini karena data melakukan Group By continent.
Baca juga : Bootcamp Data Analyst with SQL and Python
2. Group By Dapat Memahami Nomor Kolom
Group By juga bisa dilakukan dengan menggunakan nomor kolom, tidak harus nama kolomnya. Ini untuk mengefisienkan query sehingga mudah dibaca ketika query yang dituliskan lebih kompleks. Misalnya dengan menggunakan tabel di atas, country dapat disebut dengan nomor kolom 1, continent sebagai 2, dan seterusnya.
Maka, untuk query sebelumnya, kita bisa menulis seperti berikut:
Hasil yang diperoleh pun akan tetap sama dengan menggunakan nama kolom.
3. Group By Dapat Digunakan Bersama Having Klausa
Jika kalian memiliki fungsi agregat sebagai salah satu kondisi untuk memfilter data, kalian tidak bisa menggunakan Where klausa yang dikombinasikan dengan Group By. Berikut contohnya.
Ini tidak akan berhasil atau akan terjadi error. Klausa yang bisa digunakan untuk memfilter data menggunakan fungsi agregat adalah Having klausa dengan urutan diletakkan setelah Group By. Berikut contohnya.
Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data
4. Group By VS Order By
Seperti yang dibahas sebelumnya, Group By berfungsi untuk menggabungkan beberapa data yang memiliki nilai sama untuk kondisi tertentu menjadi satu kelompok data. Sedangkan Order By digunakan untuk mengurutkan data secara urutan nilai naik atau turun berdasarkan kondisi yang dipilih. Keduanya juga memiliki bentuk sintaks umum yang berbeda.
Sintaks Group By
Function_Name yang dimaksud adalah fungsi agregat seperti SUM(), AVG(), COUNT(), dan fungsi lainnya.
Sintaks Order By
ASC digunakan jika urutan yang diinginkan adalah nilai terendah ke tertinggi. Sedangkan DESC digunakan untuk mengurutkan nilai dari tertinggi ke terendah.
Penjelasan di atas hanya memberikan gambaran umum tentang fungsi Group By. Sedangkan secara praktik di dunia kerja, masih ada banyak fungsi yang harus diaplikasikan. Nah Sahabat DQ perlu mempelajari juga beragam fungsi lainnya. Bingung mulai belajar darimana? DQLab adalah jawabannya.
Modul ajarnya lengkap dan bervariasi. Dilengkapi studi kasus yang membantu kalian belajar memecahkan masalah dari berbagai industri. Bahkan diintegrasikan dengan ChatGPT. Manfaatnya apa?
Membantu kalian menjelaskan lebih detail code yang sedang dipelajari
Membantu menemukan code yang salah atau tidak sesuai
Memberikan solusi atas problem yang dihadapi pada code
Membantu kalian belajar kapanpun dan dimanapun
Selain itu, DQLab juga menggunakan metode HERO yaitu Hands-On, Experiential Learning & Outcome-based, yang dirancang ramah untuk pemula. Tunggu apa lagi, segera Sign Up dan asah kemampuan kalian dalam menggunakan SQL atau ikuti Bootcamp Data Analyst with SQL and Python sekarang!
Penulis : Dita Feby
Editor : Annissa Widya