MySQL - Fungsi Agregat
Hai teman-teman, para ahli basisdata masa depan! Hari ini, kita akan melihat dunia yang menarik dari Fungsi Agregat MySQL. Jangan khawatir jika Anda baru saja memulai pemrograman – saya akan menjadi panduan ramah Anda dalam perjalanan ini, menjelaskan segala sesuatu langkah demi langkah. Jadi, ambil secangkir kopi, dan mari kita mulai!
Apa Itu Fungsi Agregat?
Bayangkan Anda memiliki kotak besar yang penuh denganpiring berwarna-warni LEGO. Fungsi agregat adalah seperti alat ajaib yang membantu Anda menghitung, mengurutkan, atau menemukanpiring khusus dalam koleksi Anda tanpa perlu mengelus satu per satu. Dalam MySQL, fungsi ini bekerja pada set nilai dan mengembalikan satu hasil saja.
Fungsi Agregat Umum
Mari kita lihat fungsi agregat yang paling sering digunakan dalam MySQL:
Fungsi | Deskripsi |
---|---|
COUNT() | Menghitung jumlah baris |
SUM() | Menghitung jumlah total dari set nilai |
AVG() | Menghitung rata-rata dari set nilai |
MAX() | Menemukan nilai maksimum dalam set |
MIN() | Menemukan nilai minimum dalam set |
Memulai dengan Fungsi Agregat
Sebelum kita masuk ke contoh, mari kita buat tabel sederhana untuk bekerja dengannya. Bayangkan kita menjalankan toko buku online kecil:
CREATE TABLE books (
id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(100),
author VARCHAR(50),
price DECIMAL(6,2),
stock INT
);
INSERT INTO books (title, author, price, stock) VALUES
('The Great Gatsby', 'F. Scott Fitzgerald', 12.99, 50),
('To Kill a Mockingbird', 'Harper Lee', 10.99, 75),
('1984', 'George Orwell', 9.99, 100),
('Pride and Prejudice', 'Jane Austen', 7.99, 60),
('The Catcher in the Rye', 'J.D. Salinger', 11.99, 40);
Sekarang kita memiliki data toko buku kita, mari kita jelajahi setiap fungsi agregat!
COUNT(): Menghitung Dengan Mudah
Fungsi COUNT() adalah seperti seorang perpustakaawan yang cepat yang bisa mengatakan kepada Anda berapa banyak buku Anda memiliki tanpa merasa lelah.
SELECT COUNT(*) AS total_books FROM books;
Query ini akan mengembalikan:
+-------------+
| total_books |
+-------------+
| 5 |
+-------------+
Di sini, COUNT(*) menghitung semua baris dalam tabel 'books'. Kita menggunakan 'AS total_books' untuk memberikan nama yang ramah kepada hasil kami.
SUM(): Menjumlahkan Sesuatu
SUM() adalah seperti mesin kasir untuk toko buku kita, cepat menjumlahkan nilai untuk kita.
SELECT SUM(stock) AS total_stock FROM books;
Hasil:
+-------------+
| total_stock |
+-------------+
| 325 |
+-------------+
Query ini menjumlahkan semua nilai dalam kolom 'stock', memberikan kita jumlah total buku di gudang kita.
AVG(): Menemukan Median
AVG() adalah seperti menemukan "zona Goldilocks" – tidak terlalu tinggi, tidak terlalu rendah, tetapi benar-benar tepat!
SELECT AVG(price) AS average_price FROM books;
Hasil:
+---------------+
| average_price |
+---------------+
| 10.790000 |
+---------------+
Ini memberikan kita harga rata-rata buku di toko kita. Catatlah bagaimana MySQL mengembalikan sebuah angka yang presisi – ada beberapa matematika serius di balik layar!
MAX() dan MIN(): Menemukan Ekstrim
MAX() dan MIN() adalah seperti superhero data kita – selalu menemukan nilai terbesar dan terkecil.
SELECT
MAX(price) AS most_expensive,
MIN(price) AS least_expensive
FROM books;
Hasil:
+----------------+-----------------+
| most_expensive | least_expensive |
+----------------+-----------------+
| 12.99 | 7.99 |
+----------------+-----------------+
Query ini menemukan harga buku termahal dan termurah dalam satu kali saja. Efisien, kan?
Menggabungkan Fungsi Agregat
Magis sebenarnya terjadi saat kita mulai menggabungkan fungsi-fungsi ini. Mari kita dapatkan gambaran komprehensif tentang toko buku kita:
SELECT
COUNT(*) AS total_books,
SUM(stock) AS total_inventory,
AVG(price) AS average_price,
MAX(price) AS highest_price,
MIN(price) AS lowest_price
FROM books;
Hasil:
+-------------+------------------+---------------+---------------+--------------+
| total_books | total_inventory | average_price | highest_price | lowest_price |
+-------------+------------------+---------------+---------------+--------------+
| 5 | 325 | 10.790000 | 12.99 | 7.99 |
+-------------+------------------+---------------+---------------+--------------+
Wah! Dengan hanya satu query, kita mendapatkan gambaran lengkap tentang inventori dan pricing toko buku kita.
Menggunakan Fungsi Agregat dengan GROUP BY
kadang-kadang, kita ingin mengelompokkan data kita sebelum menerapkan fungsi agregat. Misalnya, kita ingin mengetahui berapa banyak buku setiap penulis memiliki dalam toko kita:
SELECT
author,
COUNT(*) AS book_count
FROM books
GROUP BY author;
Hasil:
+----------------------+------------+
| author | book_count |
+----------------------+------------+
| F. Scott Fitzgerald | 1 |
| Harper Lee | 1 |
| George Orwell | 1 |
| Jane Austen | 1 |
| J.D. Salinger | 1 |
+----------------------+------------+
Query ini mengelompokkan buku berdasarkan penulis dan kemudian menghitung berapa banyak buku yang ditulis oleh setiap penulis. Itu seperti mengatur rak buku Anda berdasarkan penulis!
Kesimpulan
Dan di sana Anda punya nya, teman-teman! Kita telah menjelajahi dunia yang menakjubkan dari Fungsi Agregat MySQL. Fungsi ini sangat kuat dan memungkinkan Anda untuk menganalyze dan menyusun data Anda dengan cepat, mengubah angka mentah menjadi wawasan yang berharga.
Ingat, latihan membuat sempurna. Cobalah membuat tabel Anda sendiri dan eksperimen dengan fungsi-fungsi ini. Sebelum Anda tahu, Anda akan menjadi ahli dalam mengquery basisdata!
Selamat coding, dan semoga query Anda selalu mengembalikan hasil yang Anda inginkan!
Credits: Image by storyset