Langsung ke konten utama

Fungsi Agregat

Fungsi Agregat

Fungsi Agregat (aggregate) adalah fungsi yang menerima koleksi nilai dan mengembalikan nilai tunggal sebagai hasilnya. Standar ISO mendefinisikan lima jenis fungsi agregat.
Fungsi-fungsi ini sangat bermanfaat ketika kita ingin meringkas atau merangkum data dari tabel. Berikut adalah beberapa fungsi agregat utama yang biasa digunakan:

  • COUNT : Mengembalikan jumlah (banyaknya atau kemunculannya) nilai di suatu kolom.
  • SUM : Mengembalikan jumlah (total atau sum) nilai di suatu kolom.
  • AVG : Mengembalikan rata-rata (average) nilai di suatu kolom.
  • MIN : Mengembalikan nilai terkecil (minimal) di suatu kolom.
  • MAX : Mengembalikan nilai terbesar (maximal) di suatu kolom

Latihan Soal :

Tabel 1 : Tabel Penjualan Barang


Tabel 2 : Tabel MataKuliah



1. Berdasarkan tabel 1, dapatkan data buku dengan harga termurah, kelompokkan berdasarkan jenis bukunya!

Masukkan Query : SELECT jenis_buku, nama_buku, MIN(harga) AS harga_termurah FROM 
penjualan_barang GROUP BY jenis_buku ORDER BY jenis_buku;

Hasilnya :



2. Berdasarkan tabel 1, dapatkan total stok buku berdasarkan jenis bukunya. Dapatkan hanya jenis buku yang stokya kurang dari 10!

Masukkan Query : SELECT jenis_buku, SUM(stok) AS total_stok FROM penjualan_barang 
GROUP BY jenis_buku HAVING SUM(stok) < 10 ORDER BY total_stok;

Hasilnya :


3. Berdasarkan tabel 2, Dapatkan jumlah matakuliah tanpa duplikasi field nama_mk?

Masukkan Query : SELECT COUNT(DISTINCT nama_mk) AS jumlah_matakuliah FROM matakuliah;

Hasilnya :



4. Bedasarkan tabel 2, dapatkan jumlah total sks pada matakuliah dengan kode_mk selain PTI?

Masukkan Query : SELECT SUM(sks) AS total_sks FROM matakuliah WHERE kode_mk != 'PTI'

Hasilnya :



1. Berdasarkan Tabel 1, dapatkan rata-rata penghasilan kotor yang di dapat dari penjualan buku dengan stok diatas 10!

Masukkan Query :SELECT AVG(harga * stok) 
AS rata_rata_penghasilan FROM penjualan_barang WHERE stok > 10;

Hasilnya :


2. Berdasarkan Tabel 1, dapatkan harga buku terbesar yang bukan komik dengan harga dibawah 2000 dan stok diatas  16!

Masukkan Query :SELECT MAX(harga) AS harga_terbesar FROM penjualan_barang 
WHERE jenis_buku != 'Komik' AND harga < 2000 AND stok > 16;

Hasilnya :


3. Berdasarkan Tabel 2, dapatkan jumlah matakuliah yang mengandung kata dr  “Sistem” hanya jika jumlahnya lebih dari 3! (jika jumlah kurang dari 3 maka akan menghasilkan “empty set”)

Masukkan Query : SELECT COUNT(*) AS jumlah_matakuliah FROM matakuliah WHERE nama_mk 
LIKE '%Sistem%' HAVING COUNT(*) > 3;

Hasilnya :

Tugas Sekolah

1. Tampilkan nama matakuliah yang memiliki sks diatas 3

Masukkan Query : SELECT nama_mk FROM matakuliah WHERE sks > 3;

Hasilnya : 


2. Tampilkan Jumlah max stok

Masukkan Query : SELECT MAX(stok) AS stok_maksimum FROM penjualan_barang;

Hasilnya :


3. Tampilkan jumlah semua stok tiap kategori buku

Masukkan Query : SELECT jenis_buku, SUM(stok) AS total_stok 
FROM penjualan_barang GROUP BY jenis_buku;

Hasilnya :


4. Jumlahkan semua buku, tampilkan nilai penjumlahan berdasarkan kategori bukunya

Masukkan Query : SELECT jenis_buku, COUNT(*) AS jumlah_buku 
FROM penjualan_barang GROUP BY jenis_buku;

Hasilnya :


5. Jumlahkan semua buku, tampilkan nilai penjumlahan berdasarkan kategori bukunya dan yang ditampilkan hanya total harga yang di atas 50.000 tiap kategori

Masukkan Query : SELECT jenis_buku, SUM(harga) AS total_harga 
FROM penjualan_barang GROUP BY jenis_buku HAVING SUM(harga) > 50000;

Hasilnya :



Komentar

Postingan populer dari blog ini

Penjelasan Tools phpMyAdmin

Menu Bar phpmyadmin Di phpMyAdmin, menu bar adalah bagian dari antarmuka yang memberikan akses cepat ke berbagai fungsi dan fitur yang tersedia untuk manajemen database. Menu bar biasanya terletak di bagian atas halaman phpMyAdmin dan berisi beberapa menu utama yang digunakan untuk navigasi dan operasi database. Berikut adalah elemen-elemen umum yang biasanya terdapat di menu bar phpMyAdmin: Browse                  Tampilan atau tab yang memungkinkan pengguna melihat dan mengelola data yang tersimpan dalam tabel database. STRUCTURE                adalah fitur yang tampilan atau tab yang menunjukkan skema tabel dalam database, termasuk kolom, tipe data, indeks, dan atribut lainnya. SQL                adalah fitur yang memungkinkan Anda untuk menulis dan menjalankan perintah SQL secara langsung. Ini berguna untuk melakukan query, pembaruan, atau modif...

Trigger MYSQL : Mengelola Stok dan Harga Pesanan

Manajemen stok dan harga dalam sistem informasi penjualan berperan penting untuk mengontrol persediaan barang dan penetapan harga jual. Manajemen stok memastikan ketersediaan barang sesuai kebutuhan, menghindari kelebihan atau kekurangan stok. Sementara manajemen harga membantu mengatur harga jual yang optimal untuk mendapatkan keuntungan yang sesuai. Keduanya harus terintegrasi dalam sistem untuk memudahkan pencatatan, pelaporan, dan pengambilan keputusan bisnis yang tepat. 1. Soal Tugas Trigger : Mengupdate Harga di tabel pesanan saat harga barang berubah Mengembalikan stok barang saat pesanan di hapus 1. Trigger Update Harga Trigger ini akan memastikan harga di pesanan_detail selalu sinkron dengan harga di tabel barang. Demostrasi ke Trigger ke -1 Tabel Barang Tabel pesanan_detail Data Awal : Di tabel barang, Laptop (id_barang= 1) memiliki harga Rp. 4.000.000 Di tabel pesanan_detail dengan id_detail  = 1 yang memiliki id_barang = 1, qty = 3 dengan harga Rp. 12.000.000 Sekarang k...

Review DCL

DCL Data Control Language  digunakan untuk mengontrol akses ke data dalam basis data. DCL mencakup perintah seperti GRANT dan REVOKE yang digunakan untuk memberikan atau mencabut izin dari pengguna atau peran. Berikut contohnya: -- Memberikan izin SELECT pada tabel employees kepada pengguna 'Rafa' GRANT SELECT ON employees TO Rafa; -- Mencabut izin SELECT pada tabel employees dari pengguna 'Rafa' REVOKE SELECT ON employees FROM Rafa; Dalam contoh ini: 1. Pernyataan ' GRANT' memberikan izin kepada pengguna ' rafa' untuk' SELECT' pada tabel  employees . 2. Pernyataan ' REVOKE' ' Menc' ' SELECT'  pada tabel ' employees'  dari pengguna ' rafa' .