Assalamu’alaikum sadayana, kumaha
damang ? aku harap pada sehat-sehat yaa
:D
Kita jumpa
lagi dalam pembahasan laporan praktikum ku. Kali ini praktikumku membahas
tentang “AGREGASI SQL DAN VIEW”. Eits, jangan beranjak dulu, semuanya akan kita
bahas bareng kok. Tetep semangat belajar ya temen-temen :D:D:D
Yang pertama,
apasih yang dimaksud agregasi, view dan apa saja yang termasuk di dalamnya? Yuk
mari cekidooot ------------
A. Landasan
Teori
1. Agregasi
Fungsi
agregasi digunakan untuk melakukan operasi pada kelompok-kelompok baris data.
Agregasi dapat digabungkan dengan sebuah parameter seperti WHERE untuk
menghasilkan suatu hasil yang lebih kompleks lagi.
Yang
termasuk fungsi-fungsi agregasi adalah :
Ø
Average (AVG):
digunakan untuk memperoleh nilai rata-rata dari seluruh nilai pada suatu kolom.
Pemakaian fungsi Avg: SELECT AVG nama_kolom
FROM nama_tabel;
Ø
Minimum (MIN):
dugunakan untuk memperoleh nilai minimum (yang terkecil) dari suatu kolom).
Pemakaian fungsi Min : SELECT MIN nama_kolom
FROM nama_tabel;
Ø
Maximum (MAX):
digunakan untuk memperoleh nilai maksimum (yang beesar) dari suatu kolom.
Pemakaian fungsi max: SELECT MAX nama_kolom
FROM nama_tabel;
Ø
Total (SUM):
digunakan untuk memperoleh nilai penjumlahan seluruh baris pada suatu kolom.
Pemakaian fungsi Sum: SELECT SUM
nama_kolom FROM nama_tabel;
Ø
Count (COUNT):
sering digunakan untuk menghitung jumlah tuple dalam suatu relasi. Pemakaian
fungsi Count: SELECT COUNT nama_kolom
FROM nama_tabel;
2. Grup By
Group
By merupakan fungsi yang digunakan untuk melakukan pengelompokan dari perintah
SELECT. Group by seringkali diperlukan untuk menjalankan agregasi menjadi sebuah
kelompok dari hasil Query. Berikut struktur SQL untuk penampilan data: SELECT
nama_kolom FROM nama_tabel GROUP BY nama_kolom;
3. Having
Jika
suatu fungsi diterapkan pada grup by yang telah dibentuk, maka digunakan kalusa
having setelah group by dan kelompok yang memenuhi kondisi saja yang akan di
hasilkan. Query nya adalah : SELECT nama_kolom FROM nama_tabel GROUP BY nama_kolom
HAVING kondisi;
4. Case
Dalam
prosesnya, SQL dapat bebas mengontrol data yang kembali dari query, kata WHERE
menggunakan perbandingan untuk mengontrol pemilihan data, sedangkan CASE
perbandingan dalam bentuk output kolom. Jadi penggunaan CASE akan membentuk
output berupa sebuah kolom baru dengan data dari operasi yang di dalamnya.
Struktur query dalam select sepertiberikut: CASE WHEN kondisi THEN hasil END;
5. View
View
dapat disebut tabel banyangan tetapi bukan temporary
table, bukan juga merupakan tabel
yang asli. Suatu view adalah suatu relasi virtual yang tidak perlu ada database
tetapi dapat dibuat atas permintaan pemakai. View juga dapat menyimpan perintah
query, dan dapat mewakili sebuah subset dari tabel asli dan memilih kolom atau
row tertentu dari tabel biasa. Berikut struktur query nya: CREATE VIEW nama_tabel_view as query;
B. Hasil
Praktikum
Oke fix, sekarang cuss ke soalnya
yaa.. kali ini langsung aja kita bahas soalnya dan disertai gambar dari DBMS
Potgre dan MySql.
1. Dari tabel mahasiswa yang telah dibuat tampilkan banyaknya
data mahasiswa yang telah di inputkan. Kemudian cari nim atau id mahasiswa yang
paling kecil, paling besar dan rata-ratanya.
Untuk menampilkan banyaknya data mahasiswa:
SELECT count(*) from mahasiswa;
Untuk menampilkan nim mahasiswa yang paling kecil:
SELECT
min(nim_mah) from mahasiswa;
Utnuk menampilkan nim mahasiswa yang paling besar:
SELECT max(nim_mah) from mahasiswa;
Untuk menampilkan rata-rata dari nim mahasiswa:
SELECT
avg(nim_mah) from mahasiswa;
2. Tampilkan rata-rata id atau nim mahasiswa yang data nimnya
lebih dari 14:
SELECT avg(nim_mah) from mahasiswa
where nim_mah > 14;
3. Tampilkan jumlah mahasiswa berdasarkan fakultas:
SELECT nama_fak, count(*) from mahasiswa, fakultas where mahasiswa.id_fak=fakultas.id_fak
group by nama_fak;
4. Tampilkan seperti nomor 3 dengan persyaratan jumlah
mahasiswa yang lebih dari 3 saja yang ditampilkan:
SELECT nama_fak, count(*) from mahasiswa, fakultas where
mahasiswa.id_fak=fakultas.id_fak group by nama_fak having count(nama_mah) >
3;
5. Tampilkan jenis kelamin “L” menjadi “Laki-laki” dan “P”
menjadi “Perempuan” pada tabel mahasiswa:
SELECT nim_mah, nama_mah, alamat_mah, id_fak, no_telp,
gender, case when gender=’L’ then ‘Laki-laki’ else ‘Perempuan’ end as
jenis_kelamin from mahasiswa;
6. Buatlah view untuk query penampilan data mahasiswa, fakultas
dan jurusan. Ambil berdasarkan nim, nama mahasiswa, nama fakultas, nama
jurusan:
CREATE VIEW mahasiswa_baru as select nim_mah, nama_mah,
nama_fak from mahasiswa, fakultas where mahasiswa.id_fak=fakultas.id_fak;
C. Perbandingan dan Evaluasi 2 DBMS
Setelah menjelaskan teori
dan membahas semua soalnya, sekarang kita sampai pada perbandingan kedua DBMS
yaitu PostgreSQL dan MySql. Apasih yang berbeda dari keduanya? Hmm
Alhamdulillah, kali ini keduanya cukup rukun, tidak ada perbedaan query dan
perintah, semua query nya sama dari awal sampai akhir.
D. Kesimpulan
dan Penutup
Oke aku udah selesai nih,
ga susah kan membuat AGREGASI SQL DAN
VIEW? Mudah banget kok, ingat-ingat lagi yaa
Count: untuk menjumlahkan baris
Min: untuk mencari nilai minimum
Max: untuk mencari nilai maksimum
Avg: untuk mencari rata-rata
Group by: mengelompokkan suatu kolom
Having: group by yang diberikan suatu kondisi, jadi kolom
tertentu saja yang ditampilkan
Case: menampilkan kolom baru, yang dibentuk dari kolom yang
sudah ada
View: menampilkan tabel baru, yang bukan temporary table dan bisa ditampilkan
kembali.
Baiklah,
sampai sini dulu yaa, kita jumpa lagi di sesi selanjutnya. Simak dan kunjungi
terus blog ku buat nambah-nambah ilmu, silakan juga komentar atau bertanya
apabila ada yang kurang jelas. Wassalamu’alaykum :)
E. Daftar
Pustaka
Musthafa,
Aziz. 2014. Modul Praktikum Desain Basis Data. Fakultas Sains Dan Teknologi UIN Malang.
Solichin, Achmad. 2010. MySQL dari
Pemula Hingga Mahir diakses melalui http://achmatim.net/download/21/





