Asalammualaikum,
asisten Lab Praktikum DBD yang nge-cek laporan Ade (lagi)..
semoga gak bosen-bosen yaa, visit blog ini :D
Semoga Laporannya mendapatkan nilai yang terbaik yaa mas ^_^
-aamiin-
Kali ini saya akan membuat laporan praktikum yang berjudul "Agregasi dan View", laporan ini ialah pertemuan praktikum saya yang kelima bersama pak Aziz selaku Laboran, dan mas Charis selaku asisten nya pak Aziz (aslab). Pada praktikum kali ini, kita membahas modul 5, dan caranya sama, kita langsung mengerjakan 10 soal Tugas Praktikum bersama-sama..
Yaudah yaa, jangan lama-lama opening nya ntar bosen (lagi), haha..
yukkk kita mulai laporannyaa..
- MATERI
Desain Basis Data memiliki banyak sekali perintah yang bisa kita gunakan untuk mendesain Basis Data tersebut. Intinya kita diberikan banyak sekali perintah dan operator yang bisa kita gunakan agar basis data yang kita buat lebih mudah untuk kita kases lagi. Disini kita akan membahas sedikit tentang Agregasi dan View
1. AGREGASI
Agregasi adalah salah satu perintah yang bisa digunakan untuk melakukan penghitungan menjadi sebuah nilai dari beberapa nilai input. Aggregate dapat digabungkan dengan sebuah parameter seperti WHERE untuk menghasilkan suatu hasil yang lebih kompleks lagi. Ada beberaapa fungsi agregasi yang di sediakan ;
- COUNT(*) untuk Menghitung jumlah baris
- SUM(NAMA KOLOM) untuk Menghitung penjumlahan data
- MAX(NAMA_KOLOM) untuk Mencari nilai terbesar
- MIN(NAMA KOLOM) untuk Mencari nilai terkecil
- AVG(NAMA KOLOM) untuk Mencari nilai rata-rata
Untuk menggunakan peritah yang mengandung agregasi kita bisa menggunakan perintah SELECT, berikut query dasar perintah agregasi :
- select count(*) from namatabel;
- select max(namakolom) from namatabel;
- select min(namakolom) from namatabel;
- select avg(namakolom) from namatabel;
2. GROUP BY
Group by ini digunakan untuk mengelompokkan kolom tertentu berdasarkan perintah SELECT. Group by ini sering digunakan bersama dengan Agregasi, digunakan sebagai pelengkap perintah yang lebih kompleks dan spesifik. Query dasar yang bisa digunakan :
- select namakolom from namatabel group by namakolom;
Berikut ini query yang diunakan bersama dengan salah satu perintah Agregasi
- select namakolom, count(*) from namatabel group by namakolom; //menggunakan perintah agregasi count
3. HAVING
Pemakaian HAVING bersama dengan GROUP BY, kegunaanya adalah untuk menentukan kondisi bagi GROUP BY, dimana kelompok yang memenuhi kondisi saja yang akan di hasilkan. Jadi apabila pada perintah SELECT yang digunakan untk menentukan kondisi adalah WHERE, tapi untuk perintah GROUP BY ini yang digunakan adalah HAVING. Contoh Query yang menggunakan perintah HAVING :
- select namakolom, sum(namakolom) from namatabel group by namakolom having sum(namakolom) = kondisi;
4. CASE
Walaupun SQL bukanlah bahasa perograman, tapi dalam prosesnya kita dapat bebas mengontrol data untuk kita tampilkan kembali. Dalam perintah SELECT kita mengenal perintah WHERE yang digunakan menentukan kondisi dari data yang ingin kita tampilkan, sedangkan CASE perbandingan dalam bentuk output kolom. Jadi intinya penggunaan CASE untuk menampilkan data tersendiri berupa kolom baru dengan data dari kolom sebelumnya yang kita manipilasi isisnya.Struktur didalam select seperti berikut :
CASE WHEN condition THEN result
[WHEN ...]
[ELSE result] END
[WHEN ...]
[ELSE result] END
5. VIEW
Views merupakan tabel duplikasi tetapi bukan temporary table, bukan juga merupakan sebuah tabel yang asli, tapi view ini cuma menduplikasi tabel awal dengan adanya modifikasi. Suatu view adalah suatu relasi virtual yang tidak perlu ada database tetapi dapat diproduksi atas permintaan oleh pemakai tertentu, pada ketika permintaan. Satu lagi kelebihan yang dimiliki oleh view yaitu dapat menyimpan perintah query, dan dapat mewakili sebuah subset dari tabel asli dan memilih kolom atau row tertentu dari tabel biasa. Berbeda dengan temporary tabel, view ini tidak hilang ketika kita ingin mengaksesnya lagi. Berikut query dasar untuk menampilkan view :
- create view nama_tabel_view as query;
- HASIL PRAKTIKUM
Jawab :
-Jawaban dari SQL Shell
-Jawaban dari My SQL
2. Tampilkan rata-rata id atau nim mhs yang data nimnya lebih dari 12
- Jawaban dari SQL Shell
- Jawaban dari My SQL
3. Tampilkan jumlah mahasiswa berdasarkan fakultas. Biar hasilnya jadi seperti ini..
4. Tampilkan table seperti di nomor 3 dengan persyaratan jumlah mahasiswa yang lebih dari sama dengan 2 aja yang ditampilkan.
5. Tampilkan data mahasiswa dengan persyaratan, jika jenis kelaminnya “L” maka akan tertulis “laki-laki” dan jika jenis kelaminnya atau gendernya “P” maka akan tertulis”Perempuan”.
- - Jawaban dari SQL Shell
- Jawaban dari My SQL
6. Membuat view untuk query penampilan data mhs, fakultas. Ambil berdasarkan nim_mah, nama_mah, nama_fak.
- Jawaban dari SQL Shell
- Jawaban dari My SQL
D. EVALUASI
Evaluasi yang ada di dalam praktikum ini sama dengan Tugas Rumah. Jadi, intinya query yang dipakai tidak menyulitkan dan antara aplikasi xammp shell dengan postgreSQL sama.
Evaluasi yang ada di dalam praktikum ini sama dengan Tugas Rumah. Jadi, intinya query yang dipakai tidak menyulitkan dan antara aplikasi xammp shell dengan postgreSQL sama.
E. KESIMPULAN
AGREGASI
|
KETERANGAN
|
Count
Sum
Avg
Max
Min
|
dipakai untuk mendapatkan nilai banyaknya record
dipakai untuk mendapatkan nilai total
dipakai untuk mendapatkan nilai rata-rata
dipakai untuk mendapatkan nilai tertinggi atau terbesar
dipakai untuk mendapatkan nilai terkecil atau terendah
|
Group by
|
Select nama_kolom from nama_tabel group by nama_kolom;
|
Having
|
SELECT nim, nama, AVG(nilai) as rata_rata FROM nilai GROUP BY nimHAVING AVG(nilai)>80;
|
Case
|
select txt_namadepan, txt_namaakhir, dt_tgllahir, case when dt_tgllahir < '1986-01-01' then 'dewasa' else 'balita' end as umur from pegawai ;
|
View
|
create view total_pelanggan as select pelanggan, sum (hargaorder) from pesanan group by pelanggan;
|
F. SARAN dan KRITIK
Dalam praktikum kali ini, praktikan sedikit mendapatkan kesulitan karena adanya beberapa query saya yang eror di my sql
G. MANFAAT
Melalui praktikum ini ,pembaca mampu mengerti tentang operator agregasi sql. Jadi, mempermudah dalam menghitung sebuah data.
H. Sumber-sumber
Mustafa, Aziz.Modul Desain Basis Data.pdf
http://web.unair.ac.id/admin/file/f_33720_SDP_5_SQL2.pdf
Subekti, Muhammad.2004.Sistem Manajemen Basis Data.Jakarta.Ghalia Indonesia
Subekti, Muhammad.2004.Sistem Manajemen Basis Data.Jakarta.Ghalia Indonesia