MySQL - Fungsi Agregat

Hai teman-teman, para ahli basis data masa depan! Hari ini, kita akan melompat ke dunia yang menarik dari Fungsi Agregat MySQL. Jangan khawatir jika Anda baru saja memulai programming – saya akan menjadi panduan yang ramah untuk Anda dalam perjalanan ini, menjelaskan segala sesuatu secara langkah demi langkah. Jadi, ambil secangkir kopi, dan mari kita mulai!

MySQL - Aggregate Functions

Apa Itu Fungsi Agregat?

Bayangkan Anda memiliki kotak besar puing-puing LEGO berwarna-warni. Fungsi agregat adalah seperti alat sihir yang membantu Anda menghitung cepat, mengurutkan, atau menemukan puing-puing khusus dalam koleksi Anda tanpa harus mengulang satu per satu. Dalam MySQL, fungsi ini bekerja pada set nilai dan mengembalikan hasil tunggal.

Fungsi Agregat Umum

mari kita lihat fungsi agregat yang paling sering digunakan dalam MySQL:

Fungsi Deskripsi
COUNT() Menghitung jumlah baris
SUM() Menghitung total nilai dari set
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 melompat 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 cepat yang dapat memberitahu Anda berapa banyak buku Anda memiliki tanpa khawatir.

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 memberi nama yang ramah kepada hasil kita.

SUM(): Menjumlahkan Hal-Hal

SUM() adalah seperti mesin kasir untuk toko buku kita, menjumlahkan nilai secara cepat.

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 inventori kita.

AVG(): Menemukan Titik Tengah

AVG() adalah seperti menemukan "zona Goldilocks" – tidak terlalu tinggi, tidak terlalu rendah, tetapi tepat saja!

SELECT AVG(price) AS average_price FROM books;

Hasil:

+---------------+
| average_price |
+---------------+
|     10.790000 |
+---------------+

Ini memberikan kita harga rata-rata buku di toko kita. Catat bahwa MySQL mengembalikan sebuah nomor yang presisi – itu melakukan operasi matematika yang serius di belakang 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 baik harga buku termahal maupun termurah dalam satu langkah. Efisien, kan?

Menggabungkan Fungsi Agregat

Magic yang sebenarnya terjadi saat kita mulai menggabungkan fungsi-fungsi ini. mari kita dapat 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 harga buku di toko kita.

Menggunakan Fungsi Agregat dengan GROUP BY

kadang-kadang, kita ingin mengelompokkan data kita sebelum menerapkan fungsi agregat. mari kita katakan kita ingin mengetahui berapa banyak buku setiap pengarang memiliki di 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 pengarang dan kemudian menghitung berapa banyak buku yang ditulis oleh setiap pengarang. Seperti mengatur rak buku Anda berdasarkan pengarang!

Kesimpulan

Dan di sana Anda punya nya, teman-teman! Kita telah menjelajahi dunia yang menakjubkan dari Fungsi Agregat MySQL. Fungsi ini yang kuat memungkinkan Anda untuk secara cepat menganalisis dan menyummarisasi data Anda, merubah nomor 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 mengekueri basis data seperti seorang pro!

Semangat coding, dan may your queries always return the results you're looking for!

Credits: Image by storyset