Data Manipulation Language (Aggregate Function) Komang kurniawan W., M.Cs.
Aggregate Fungsi yang menerima koleksi nilai dan mengembalikan nilai tunggal sebagai hasilnya. 5 standar fungsi Aggregate : a. COUNT d. MIN b. SUM e. MAX c. AVG
COUNT Function Fungsi yang digunakan dalam bahasa SQL untuk menghitung jumlah atau banyaknya baris data atau record dari suatu table. Contoh : SELECT COUNT(pembeli) FROM pembelian WHERE barang="Mouse“
SUM Function Fungsi yang digunakan dalam bahasa SQL untuk menghitung jumlah ataupun hasil penjumlahaan data angka dari suatu field ataupun kolom. Contoh : SELECT SUM(harga) FROM pembelian WHERE pembeli="Ujang Doremi“
Average (AVG) Function Fungsi yang digunakan dalam bahasa SQL untuk mengitung nilai rata- rata dari suatu kolom. Contoh : SELECT AVG(harga) FROM pembelian WHERE pembeli="Cecep Sukhoi“
Min Function Fungsi yang digunakan dalam bahasa SQL untuk mencari nilai terkecil dari kumpulan data angka dalam suatu field. Contoh : SELECT MIN(harga) FROM pembelian WHERE pembeli="Cecep Sukhoi“
Max Function Fungsi yang digunakan dalam bahasa SQL untuk mencari nilai terbesar dari kumpulan data angka dalam suatu kolom atau field. Contoh : SELECT MAX(harga) FROM pembelian WHERE pembeli="Ujang Doremi“
Data Manipulation Language (Group By)
Group By Digunakan pada pernyataan SELECT untuk agregasi data berdasarkan grup (pengelompokan) suatu kolom. Bentuk umum : SELECT kolom1, kolom2, ... kolomn, fungsi_agregat(ekspresi) FROM nama_tabel WHERE syarat GROUP BY kolom1, kolom2, ... kolomn;
Implementasi Group By SELECT AVG(nilai) as rata_rata FROM nilai; Untuk menyelesaikannya tidak perlu menggunakan GROUP BY karena yang diminta adalah seluruh mahasiswa. gunakan GROUP BY untuk mengelompokkan rata-rata berdasarkan field tertentu : SELECT nim, nama, AVG(nilai) as rata_rata FROM nilai GROUP BY nim;
Implementasi Group By SELECT nim, nama, MAX(nilai) as terbesar, MIN(nilai) as terkecil FROM nilai GROUP BY nim; +-----------------+--------+----------+-----------+ | nim | nama | terbesar | terkecil | | 0911500101 | ADI | 90 | 65 | | 0911500102 | IDA | 90 | 70 | | 0911500103 | EDI | 88 | 60 | | 0911500104 | INA | 80 | 50 | | 0911500105 | ANI | 92 | 68 |
Implementasi Group By SELECT nim, nama, MAX(nilai) as terbesar, MIN(nilai) as terkecil FROM nilai GROUP BY nim; +-----------------+--------+----------+-----------+ | nim | nama | terbesar | terkecil | | 0911500101 | ADI | 90 | 65 | | 0911500102 | IDA | 90 | 70 | | 0911500103 | EDI | 88 | 60 | | 0911500104 | INA | 80 | 50 | | 0911500105 | ANI | 92 | 68 |
Implementasi Group By Tampilkan rata-rata nilai untuk setiap mahasiswa, yang rata-rata nilai lebih besar dari 80. SELECT nim, nama, AVG(nilai) as rata_rata FROM nilai GROUP BY nim WHERE AVG(nilai)>80; SELECT nim, nama, AVG(nilai) as rata_rata FROM nilai GROUP BY nim HAVING AVG(nilai)>80;
Data Manipulation Language (Having)
Having Klausa Having disediakan untuk mendukung klausa Order By. Kegunaannya adalah untuk menentukan kondisi bagi Group By. Kelompok yang memenuhi kondisi Having saja yang akan dihasilkan. Bentuk umum : SELECT [nama_field], COUNT (nama_field) FROM [nama_tabel] GROUP BY [nama_field] HAVING [kondisi];
Latihan Hitung jumlah record tabel buku Hitung jumlah record tabel buku untuk Buku Teks Hitung jumlah record untuk tahun 2003 Hitung total harga Hitung total harga untuk tahun 2003 Tampilkan judul buku dan harga. Kelompokkan berdasarkan judul buku dimana yang memiliki total harga diatas Rp. 50.000,-