Query Penjumlahan di SQL dan Fungsi Agregat Lainnya
Syaukha Ahmad Risyad
•
17 June 2023
•
11642
Fungsi penjumlahan adalah fungsi yang esensial dalam analisis data di SQL. Meskipun begitu, ada banyak implementasi query penjumlahan yang mungkin belum kamu tahu. Dalam artikel ini, kita bakal menyelam dalam terkait query penjumlahan di SQL.
Buat Sobat MinDi yang tertarik untuk menjadi data scientist atau data analyst, pekerjaan kamu bakal banyak melibatkan dataset yang sangat besar. Dengan data yang besar, kamu tentunya memerlukan bantuan fungsi penjumlahan dari Relational Database Management System (RDBMS), seperti PostgreSQL. Memahami fungsi penjumlahan di SQL tentunya akan mempermudah proses analisis data kamu.
Nah, MinDi mau menunjukkan berbagai teknik yang bisa kamu lakukan menggunakan query penjumlahan di SQL. Selain itu, MinDi juga bakal memperkenalkan kamu dengan beberapa fungsi agregat lain yang bakal sering kamu gunakan.
Query Penjumlahan Menggunakan SUM
Fungsi SUM pada SQL adalah fungsi agregat yang digunakan untuk menghitung suatu set data atau nilai, menggunakan ekspresi atau kondisi tertentu.
Sintaksis umum dari fungsi SUM adalah seperti berikut.
SUM(kolom_atau_ekspresi)
Fungsi tersebut akan menghitung seluruh nilai pada kolom yang kamu pilih, atau menghitung ekspresi yang kamu masukkan.
Kita akan coba mendemonstrasikan fungsi SUM dalam artikel ini. Tabel yang kita gunakan adalah tabel ‘Orders’ seperti berikut.
Menggunakan fungsi SUM, kita dapat menghitung penjumlahan untuk satu kolom penuh.
SELECT SUM (Quantity) AS Total_Quantity
FROM Orders;
Berdasarkan query tersebut, kita akan memperoleh kolom baru seperti berikut.
Kita dapat melihat dari hasil query, bahwa fungsi SUM menghitung semua data yang ada pada kolom ‘Quantity’ dan tidak mempedulikan baris yang nilainya NULL.
Fungsi SUM Menggunakan Ekspresi
Fungsi SUM dapat diaplikasikan untuk ekspresi tertentu, misalkan kamu ingin menjumlahkan harga dikalikan kuantitas pesanan untuk mendapatkan total pendapatan.
Kamu dapat menulis query seperti berikut.
SELECT SUM (Price * Quantity) AS Total_Earnings
FROM Orders;
Pada query tersebut, SQL akan mengalikan data ‘Price’ dengan data ‘Quantity’ untuk setiap baris, barulah kemudian hasil pengalian setiap baris dijumlahkan. Hasil dari query tersebut adalah kolom baru seperti berikut.
Fungsi SUM Menggunakan GROUP BY
Fungsi SUM juga umumnya digunakan untuk menjumlahkan data berdasarkan kategori. Di sinilah klausa GROUP BY diperlukan.
Kita dapat menuliskan query seperti berikut.
SELECT Type, SUM(Quantity) AS Total_Quantity
FROM Orders
GROUP BY Type;
Kita menjumlahkan kuantitas dari semua baris di tabel berdasarkan kategori ‘Type’. Keluaran dari query tersebut adalah seperti berikut.
Fungsi SUM Menggunakan HAVING
Kamu dapat memasang suatu kondisi tertentu dalam penjumlahan kamu dengan menggunakan klausa HAVING. Misalkan kamu ingin menyaring agar keluaran dari query kamu hanya menampilkan data tertentu saja.
Misalkan kita tulis query berikut.
SELECT Type, SUM (Quantity) AS Total_Quantity
FROM Orders
GROUP BY Type
HAVING SUM (Quantity) > 5;
Kita tahu dari hasil sebelumnya bahwa produk dengan tipe ‘Buku’ hanya memiliki ‘Total_Quantity’ sebesar 1. Karena kondisi kita adalah penjumlahan kuantitas harus lebih dari 5, maka hanya data untuk ‘Perkakas’ saja yang ditampilkan seperti berikut.
Fungsi SUM Menggunakan DISTINCT
Fungsi SUM dapat dipasangkan dengan DISTINCT untuk menghitung data-data yang unik (non duplikat).
Misalkan kita gunakan query berikut.
SELECT SUM (Price) AS Total_Price, SUM (DISTINCT Price) AS Total_Distinct_Price
FROM Orders;
Hasil dari query di atas adalah seperti berikut.
Dari keluaran query tersebut, ‘Total_Price’ dan ‘Total_Distinct_Price’ memberikan nilai yang berbeda. Kita lihat dari tabel ‘Orders’ bahwa harga (‘Price’) dari Binder dan Album adalah sama, yaitu 10. SQL memandang kedua data sebagai data yang sama, sehingga akan memperhitungkan data ‘10’ satu kali.
Fungsi Agregat Lain
Dalam SQL, terdapat beberapa fungsi agregat lain yang dapat digunakan untuk melakukan operasi kalkulasi terhadap data. Setiap fungsi agregat memiliki kegunaannya masing-masing.
Berikut adalah beberapa fungsi agregat yang umum digunakan. Untuk demonstrasi fungsi, kita akan menggunakan tabel yang sama seperti di atas.
AVG
Fungsi AVG berguna untuk menghitung rata-rata dari nilai pada kolom tertentu. Ketika menghitung rata-rata menggunakan AVG di SQL, baris dengan nilai NULL tidak akan dimasukkan ke dalam perhitungan.
Contoh fungsi AVG adalah seperti berikut.
SELECT AVG (Quantity) AS Average_Quantity
FROM Orders;
Hasil dari query tersebut adalah seperti berikut.
COUNT
Fungsi COUNT pada SQL digunakan untuk menghitung banyak baris yang memenuhi kondisi tertentu atau total baris pada suatu tabel. Biasanya fungsi COUNT digabungkan dengan klausa WHERE untuk spesifikasi kondisi.
Misalkan kita gunakan query berikut.
SELECT COUNT(*) AS Best_Seller
FROM Orders
WHERE Quantity > 2;
Query tersebut akan menghitung berapa banyak baris yang data ‘Quantity’-nya lebih dari 2. Kalau kita lihat dari tabel, kita temukan bahwa ‘Produk’ yang memenuhi kondisi tersebut hanyalah Pensil dan Pulpen. Sehingga keluaran dari query di atas adalah seperti berikut.
MIN
Pada SQL, fungsi MIN digunakan untuk memperoleh nilai terendah dari suatu kolom di dalam tabel. Fungsi MIN tidak memperhitungkan NULL pada data.
Contoh fungsi MIN dalam tabel di atas adalah seperti berikut.
SELECT MIN (Price) AS Minimum_Price
FROM Orders;
Produk dengan ‘Price’ termurah di tabel tersebut adalah Pensil. Maka keluaran dari query adalah seperti berikut.
MAX
Berkebalikan dengan fungsi MIN, fungsi MAX pada SQL digunakan untuk mendapatkan nilai tertinggi dari suatu kolom di dalam tabel. Seperti fungsi MIN, fungsi MAX juga tidak memperhitungkan NULL pada data.
SELECT MAX (Quantity) AS Maximum_Quantity
FROM Orders;
Kuantitas maksimum dimiliki oleh produk Pensil. Sehingga hasil dari query di atas adalah seperti berikut.
Nah, itu tadi pembahasan tentang query penjumlahan di SQL menggunakan fungsi SUM beserta fungsi-fungsi agregat lainnya.
SQL adalah tools yang sangat berguna untuk membantu kamu melakukan analisis data. Oleh karena itu, kamu harus bisa menguasai RDBMS seperti PostgreSQL, termasuk fungsi-fungsi agregat di atas.
Kalau Sobat MinDi tertarik untuk mempelajari analisis data dan data science lebih dalam, kamu dapat ikutan Bootcamp Data Science yang diadakan oleh Dibimbing.id!
Kamu bakal belajar banyak tentang tools yang biasa dipakai untuk analisis data, seperti PostgreSQL, Python, hingga Tableau. Sepanjang perjalananmu bersama Dibimbing,id, kamu bakal dilatih oleh ahli-ahli data science yang sudah berpengalaman di perusahaan-perusahaan ternama!
Makanya, ayo bergabung sekarang dan belajar data science bersama Dibimbing.id!Tags