Rumahweb Journal
banner - Belajar SQL Database bagian 10

Belajar SQL Database Bagian 10 – Fungsi Agregat dan Grouping

Di seri belajar SQL database bagian 9, kita sudah belajar tentang constraint di MySQL yang berfungsi untuk menjaga agar data tetap valid dan terstruktur dengan baik di dalam tabel. Dengan constraint, database menjadi lebih aman dari kesalahan input data.

Nah selanjutnya pada belajar SQL database bagian 10 kita akan beralih ke topik fungsi agregat dan grouping dalam SQL. Materi ini sangat penting karena dalam praktiknya kita tidak hanya membutuhkan data mentah, tetapi juga ringkasan dan analisis data, seperti rata-rata nilai mahasiswa, nilai tertinggi, atau jumlah mata kuliah yang diambil mahasiswa.

Pada bagian ini, kita akan mempelajari pengertian fungsi agregat, cara kerja fungsi seperti COUNT, SUM, AVG, MIN, dan MAX, serta penggunaan GROUP BY dan HAVING untuk mengelompokkan dan memfilter hasil analisis data secara lebih efektif.

Apa Itu Fungsi Agregat?

Fungsi agregat adalah fungsi dalam SQL yang digunakan untuk menggabungkan banyak baris menjadi satu nilai ringkasan. Fungsi ini sangat berguna ketika kita ingin mendapatkan insight dari data dalam jumlah besar.

Beberapa fungsi agregat utama dalam SQL adalah:

FungsiKegunaan
COUNT()Menghitung jumlah baris
SUM()Menjumlahkan nilai
AVG()Menghitung rata-rata
MIN()Mencari nilai terkecil
MAX()Mencari nilai terbesar

Dalam konteks akademik, fungsi agregat sering digunakan untuk:

Pindah Hosting ke Rumahweb Gratis

  • menghitung jumlah mata kuliah yang diambil mahasiswa,
  • melihat rata-rata nilai per mahasiswa,
  • mencari nilai tertinggi dan terendah,
  • mengidentifikasi mahasiswa berprestasi, dan
  • membuat laporan akademik atau dashboard nilai.

Contoh Struktur Tabel

Agar pembahasan lebih mudah dipahami, kita akan menggunakan contoh tabel nilai_mahasiswa berikut:

Data dari tabel nilai_mahasiswa yang digunakan untuk belajar SQL saat ini

Tabel ini menyimpan data nilai mahasiswa untuk beberapa mata kuliah.

Fungsi COUNT() – Menghitung Jumlah Data

Fungsi COUNT() digunakan untuk menghitung jumlah baris dalam sebuah tabel.

Contoh menghitung total data nilai:

SELECT COUNT(*) AS total_data_nilai
FROM nilai_mahasiswa;

Berikut hasil perhitungan total data nilainya:

Hasil query penggunaan fungsi count()

Penjelasan:

  • COUNT(*) menghitung semua baris tanpa memedulikan nilai NULL.
  • Cocok untuk menghitung total data nilai, total mahasiswa, atau total mata kuliah.

Perbedaan penting:

  • COUNT(*) ? menghitung semua baris
  • COUNT(kolom) ? hanya menghitung baris yang tidak NULL

Fungsi SUM(), AVG(), MIN(), dan MAX()

Berikut penjelasan masing-masing fungsi:

SUM() — Total Nilai

SELECT SUM(nilai) AS total_semua_nilai
FROM nilai_mahasiswa;

Query ini menjumlahkan seluruh nilai yang ada dalam tabel. Berikut hasilnya:

Hasil query penggunaan fungsi SUM()

AVG() — Rata-rata

SELECT AVG(nilai) AS rata_rata_nilai
FROM nilai_mahasiswa;

Berikut hasil rata – rata yang didapati :

Hasil query penggunaan fungsi AVG()

Biasanya dipakai untuk:

  • melihat kualitas rata-rata mahasiswa,
  • mengevaluasi performa kelas,
  • menentukan standar kelulusan.

MIN() & MAX() — Nilai Terkecil dan Terbesar

SELECT 
  MIN(nilai) AS nilai_terendah,
  MAX(nilai) AS nilai_tertinggi
FROM nilai_mahasiswa;

Berikut nilai terendah dan tertingginya:

Hasil query penggunaan fungsi Min() & MAX()

Fungsi ini berguna untuk:

  • mencari mahasiswa dengan nilai terendah,
  • mencari mahasiswa dengan nilai tertinggi,
  • membandingkan performa akademik.

GROUP BY – Mengelompokkan Data

Fungsi agregat sering digunakan bersama GROUP BY, yaitu perintah untuk mengelompokkan data berdasarkan kolom tertentu.

Contoh menghitung rata-rata nilai setiap mahasiswa menggunakan GROUP BY:

SELECT mahasiswa_id, AVG(nilai) AS rata_rata_nilai
FROM nilai_mahasiswa
GROUP BY mahasiswa_id;

Query berikut digunakan untuk menghitung rata-rata nilai setiap mahasiswa dengan mengelompokkan data berdasarkan mahasiswa_id menggunakan GROUP BY. Berikut hasilnya :

Hasil query penggunaan fungsi agregat GROUP BY

Cara kerjanya:

  1. SQL mengelompokkan baris data berdasarkan nilai mahasiswa_id yang sama
  2. Lalu menghitung rata-rata nilai tiap mahasiswa

Tanpa GROUP BY, query di atas akan menghasilkan error.

WHERE vs HAVING

WHEREHAVING
Memfilter data sebelum proses GROUP BYDipakai setelah GROUP BY
Untuk filter baris biasaUntuk filter hasil agregasi

Contoh penggunaan HAVING:

SELECT mahasiswa_id, AVG(nilai) AS rata_rata_nilai
FROM nilai_mahasiswa
GROUP BY mahasiswa_id
HAVING AVG(nilai) > 80;

Query diatas digunakan untuk menampilkan mahasiswa yang rata-rata nilainya di atas 80. Berikut hasil dari query diatas:

Hasil query penggunaan fungsi agregat HAVING

Studi Kasus Analisis Data

1. Menghitung rata-rata Nilai per Mata Kuliah

SELECT mata_kuliah, AVG(nilai) AS rata_rata_nilai
FROM nilai_mahasiswa
GROUP BY mata_kuliah;

Query ini menampilkan rata-rata nilai tiap mata kuliah. Dari hasil tersebut, dapat dianalisis mata kuliah mana yang memiliki rata-rata tertinggi atau terendah. Berikut hasilnya:

Hasil dari rata - rata nilai per mata kuliah

2. Menghitung 3 Mahasiswa dengan Nilai Rata-rata Tertinggi

SELECT mahasiswa_id, AVG(nilai) AS rata_rata_nilai
FROM nilai_mahasiswa
GROUP BY mahasiswa_id
ORDER BY rata_rata_nilai DESC
LIMIT 3;

Query di atas digunakan untuk menampilkan 3 mahasiswa dengan nilai rata-rata tertinggi. Berikut hasil query diatas :

Hail query menghitung 3 mahasiswa dengan nilai rata-rata tertinggi - belajar sql database

Berguna untuk:

  • menentukan mahasiswa berprestasi,
  • pemberian beasiswa,
  • pemetaan kualitas akademik.

Kesalahan Umum Pada Pemula

Beberapa kesalahan yang sering terjadi:

  1. Lupa pakai GROUP BY saat menggunakan fungsi agregat.
  2. Menggunakan WHERE untuk filter hasil agregasi (seharusnya HAVING).
  3. Tidak memahami perbedaan COUNT(*) dan COUNT(kolom).
  4. Mengelompokkan data tanpa tujuan analisis yang jelas.

Kesimpulan

Fungsi agregat dan GROUP BY adalah fitur penting dalam SQL untuk merangkum dan menganalisis data secara lebih terstruktur. Dengan fungsi seperti COUNT, SUM, AVG, MIN, dan MAX, data mentah dapat diubah menjadi informasi yang berguna untuk pengambilan keputusan akademik maupun bisnis.

Melalui GROUP BY, data bisa dikelompokkan berdasarkan kategori tertentu, sementara HAVING digunakan untuk memfilter hasil agregasi. Dengan memahami konsep ini, pengolahan data dalam database menjadi lebih rapi dan efektif.

Demikian tutorial Belajar SQL Database Bagian 10 tentang Fungsi Agregat dan Grouping dalam SQL. Terus ikuti seri belajar SQL Database dari Rumahweb. Semoga bermanfaat!

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 0 / 5. Vote count: 0

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Kholifatush Sholichah

Kholifatush Sholichah, atau yang akrab disapa Lika adalah bagian dari team Technical Support Rumahweb. Lika suka menulis jurnal tentang WordPress, cara mengatasi berbagai macam error, seperti SSL error, database error, dan masalah teknis lainnya yang sering terjadi pada website. Melalui tulisannya, Lika ingin membantu Anda mengatasi masalah tersebut dengan solusi yang mudah dipahami.

banner pop up - Pindah Hosting ke Rumahweb