Selasa, 28 April 2026

Analisis Data Lebih Cerdas: Memahami Fungsi Agregat, GROUP BY, dan Fungsi Bawaan SQL

 Makalah 

SESI 7

FUNGSI AGREGAT DAN FUNGSI BAWAAN SQL



 

 OLEH: 

Bunga Putri Salsabilla

24781005

MI 4A

 

Dosen Pengampu : M. Reza Redo Islami, S. Kom., M.T.I.

 

D3 MANAJEMEN INFORMATIKA

JURUSAN TEKNOLOGI INFORMASI

POLITEKNIK NEGERI LAMPUNG

2026  

Pendahuluan 

Di era digital, basis data tidak hanya sekadar tempat penyimpanan data mentah, tetapi juga mesin analitik yang kuat. Pada Praktikum Pemrograman SQL Lanjut Minggu ke-7, kita tidak lagi hanya memanggil data menggunakan perintah SELECT biasa, melainkan mulai memproses, meringkas, dan mengubah wujud data tersebut menjadi informasi yang memiliki nilai bisnis. Kemampuan ini didukung oleh fitur Fungsi Agregat dan Fungsi Bawaan SQL. Keduanya merupakan instrumen krusial bagi seorang administrator basis data maupun analis data untuk mengekstrak insight secara efisien.

Mengenal Fungsi Agregat dan Fungsi Bawaan 

Fungsi Agregat bertugas untuk melakukan perhitungan matematis pada sekumpulan baris data dan mengembalikan satu nilai tunggal. Fungsi yang paling sering digunakan meliputi COUNT (menghitung jumlah baris), SUM (menjumlahkan nilai numerik), AVG (mencari nilai rata-rata), serta MIN dan MAX (mencari nilai terkecil dan terbesar). Penggunaan agregasi ini sangat erat kaitannya dengan klausa GROUP BY untuk mengelompokkan data berdasarkan kriteria tertentu, serta HAVING yang bertugas sebagai "satpam" untuk menyaring hasil agregasi (karena WHERE tidak bisa digunakan untuk fungsi agregat).

Selain agregasi, SQL juga menyediakan Fungsi Bawaan (Built-in Functions) yang sangat fleksibel. Untuk memanipulasi teks, kita dapat menggunakan UPPER atau LOWER untuk standarisasi huruf kapital/kecil, dan LENGTH untuk menghitung panjang karakter. Sementara untuk tipe data waktu (DATE), kita bisa mengekstrak komponen spesifik seperti tahun atau bulan menggunakan fungsi seperti YEAR(), MONTH(), atau strftime() tergantung dari DBMS yang digunakan.

Studi Kasus Bisnis: Analisis Penjualan "MORY-COOKIES" 

Untuk melihat ketangguhan fungsi-fungsi ini, mari kita aplikasikan pada skenario bisnis. Bayangkan kita memiliki basis data untuk usaha kuliner sehat, misalnya "MORY-COOKIES" (Moringa & Ivory Cookies). Kita memiliki tabel penjualan_harian dengan kolom: id_transaksi, nama_pembeli, tgl_transaksi, varian_rasa, dan jumlah_box.

Sebagai perencana bisnis, kita ingin mengetahui: Berapa total box MORY-COOKIES yang terjual setiap bulannya selama tahun ini, tetapi kita hanya ingin melihat bulan-bulan di mana penjualannya sukses menembus target lebih dari 50 box?


Kita bisa menggabungkan fungsi bawaan tanggal, fungsi agregat, GROUP BY, dan HAVING dalam satu query yang efisien:

Hasil yang  tampil
Sistem hanya akan menampilkan data untuk bulan 1 (Januari), 3 (Maret), dan 4 (April). Bulan 2 (Februari) otomatis disembunyikan oleh sistem karena total penjualannya hanya 25 box (tidak memenuhi syarat HAVING SUM(jumlah_box) > 50).

Analisis Studi Kasus

Pada query di atas, fungsi bawaan YEAR() dan MONTH() mengekstrak informasi waktu, mengabaikan tanggal spesifiknya. Klausa GROUP BY kemudian mengelompokkan transaksi per bulan. Selanjutnya, fungsi agregat SUM(jumlah_box) menjumlahkan total produk MORY-COOKIES yang dibeli konsumen. Terakhir, klausa HAVING bekerja layaknya filter yang menggugurkan bulan-bulan dengan penjualan lesu (di bawah 50 box). Tanpa fungsi-fungsi SQL ini, kita harus menghitung ribuan baris data secara manual di spreadsheet.

Refleksi Pribadi: Tantangan dan Tips Belajar SQL Minggu Ini

Hal yang Paling Sulit (Tantangan)

 Bagian yang cukup menantang pada praktikum kali ini adalah kepekaan terhadap detail sintaks dan adaptasi perbedaan "dialek" SQL. Saat mengerjakan skenario di simulator web, sistem menggunakan basis SQLite, sementara untuk lampiran laporan harus dieksekusi di SQL Server Management Studio (SSMS) menggunakan T-SQL. Perbedaan penulisan fungsi, seperti strftime() di simulator yang harus diubah menjadi YEAR() atau MONTH() di SSMS, serta operator penggabungan teks || yang harus diganti menjadi tanda +, menuntut ketelitian ekstra agar kueri tidak error.

Selain itu, proses debugging kesalahan sepele juga cukup menguji kesabaran. Contohnya, saya sempat mengalami syntax error berulang kali hanya karena kebiasaan menggunakan tanda strip (-) saat membuat nama alias (misalnya menulis rata-rata_ipk). Di dalam SQL, tanda strip tersebut dibaca sebagai operasi matematika pengurangan, sehingga kueri gagal dieksekusi.

Tips yang Membantu:

  1. Kaitkan dengan Studi Kasus Nyata: Memahami logika GROUP BY dan HAVING yang awalnya abstrak menjadi jauh lebih intuitif ketika saya mengaitkannya dengan rencana proyek bisnis yang sedang saya susun, yaitu MORY-COOKIES. Mengimajinasikan kueri SQL untuk memfilter target penjualan bulanan produk secara nyata membuat fungsi agregat terasa jauh lebih masuk akal dan mudah diingat.

  2. Disiplin Penamaan (Gunakan Underscore): Untuk menghindari error fatal seperti yang saya alami, pastikan selalu menggunakan garis bawah (underscore) untuk memisahkan kata pada penamaan alias kolom (misal: rata_rata_ipk atau jumlah_mhs). Jangan pernah menggunakan spasi atau tanda strip.

  3. Eksekusi Bertahap: Saat membuat kueri yang panjang, jangan menulis semuanya sekaligus. Mulailah dengan SELECT dasar, lalu tambahkan GROUP BY untuk memastikan pengelompokannya benar. Setelah hasilnya terlihat sesuai, barulah tambahkan klausa HAVING atau fungsi ORDER BY di tahap akhir.

Kesimpulan

Penguasaan fungsi agregat dan fungsi bawaan SQL merupakan lompatan penting dari sekadar "menyimpan data" menjadi "menganalisis data". Dengan memanfaatkan kombinasi klausa GROUP BY dan HAVING, kita tidak hanya mengelompokkan informasi, tetapi juga dapat menyaring hasil agregasi secara presisi—seperti menemukan tren penjualan produk yang berhasil melampaui target bulanan. Ditambah dengan kemampuan fungsi bawaan untuk memanipulasi teks dan mengekstrak elemen tanggal, data mentah dapat diseragamkan dan diolah menjadi metrik yang siap pakai. Pada akhirnya, kemampuan meracik kueri SQL yang efisien adalah fondasi esensial untuk mengubah tumpukan data operasional menjadi insight bisnis yang bernilai strategis.


Daftar Pustaka

Connolly, T. M., & Begg, C. E. (2015). Database Systems: A Practical Approach to Design, Implementation, and Management (6th ed.). Pearson Education.

Microsoft. (n.d.). Aggregate Functions (Transact-SQL). Microsoft Learn. Diakses pada 28 April 2026, dari https://learn.microsoft.com/en-us/sql/t-sql/functions/aggregate-functions-transact-sql

SQLite. (n.d.). Built-in Aggregate Functions. SQLite Official Documentation. Diakses pada 28 April 2026, dari https://www.sqlite.org/lang_aggfunc.html

SQLite. (n.d.). Date And Time Functions. SQLite Official Documentation. Diakses pada 28 April 2026, dari https://www.sqlite.org/lang_datefunc.html







Tidak ada komentar:

Posting Komentar

Analisis Data Lebih Cerdas: Memahami Fungsi Agregat, GROUP BY, dan Fungsi Bawaan SQL

  Makalah  SESI 7 FUNGSI AGREGAT DAN FUNGSI BAWAAN SQL    OLEH:   Bunga Putri Salsabilla 24781005 MI 4A   Dosen Pengampu :  M. Reza Redo Isl...