Selamat Datang di mi-akakom.blogspot.com Area Manajemen Informatika: Laporan Praktikum Sistem Basis Data Modul 13

menu

22 Mei 2012

Laporan Praktikum Sistem Basis Data Modul 13

PERTEMUAN KE - 13

Sub Query (Lanjutan)

Pada pertemuan ketigabelas ini, mahasiswa diajarkan tentang perintah-perintah mampu menggunakan perintah SQL untuk menampilkan data dengan syarat berjenjang, melanjutkan

Sub Query

Merupakan bentuk query yang terletak dalam query lain. Dalam pemahaman sederhana didalam select terdapat select lain. Kata kunci untuk subquery ada tiga macam yaitu :

§ IN

§ EXIST

§ ALL/ANY/SOME

Pembahasan Praktikum

Dengan menggunakan database dbproyek1 gunakan perintah-perintah pada Sub Query yaitu IN, EXISTS, ALL, ANY,dan SOME untuk mengelola dan mengoperasikan pada database kampus, modifikasi dan kembangkan!!

Ø IN

mysql> select nim, nama from mhs

-> where nim in(select distinct nim from khs);

+------------+--------+

| nim | nama |

+------------+--------+

| 0802100011 | Emy |

| 0802100012 | Waldan |

| 0802100013 | Tasya |

| 0802100015 | Thomas |

+------------+--------+

4 rows in set (0.02 sec)

Menampilkan nim, nama dari table mhs dimana nim mengandung sama seperti yang dihasilkan oleh query select distinct, yaitu menampilkan nim pada table khs dimana nim yang sama hanya akan ditampilkan sekali. Select distinct fungsinya adalah untuk menampilkan hasil query mysql jika ada row yang isinya sama, maka hanya akan diambil salah satu saja.

Ø EXISTS

mysql> select nim, nama from mhs

-> where exists(select * from khs where nim=mhs.nim);

+------------+--------+

| nim | nama |

+------------+--------+

| 0802100011 | Emy |

| 0802100012 | Waldan |

| 0802100013 | Tasya |

| 0802100015 | Thomas |

+------------+--------+

4 rows in set (0.33 sec)

Menampilkan nip, nama dari table mhs yang dapat menghasilkan satu atau lebih kolom, dari perintah yang menampilkan semua record khs dimana nim sama dengan nim pada table mhs.

Ø ANY

mysql> select nim, nama from mhs

-> where nim=any(select distinct nim from khs);

+------------+--------+

| nim | nama |

+------------+--------+

| 0802100011 | Emy |

| 0802100012 | Waldan |

| 0802100013 | Tasya |

| 0802100015 | Thomas |

+------------+--------+

4 rows in set (0.08 sec)

Merupakan perintah untuk menampilkan kolom nim, nama dari table mhs dimana nim sama dengan sama hasilnya yang dihasilkan record nim dari table khs dimana jika ada data yang data nim yang sama hanya akan ditampilkan satu kali saja.

Ø NOT EXISTS

mysql> select nim, nama from mhs

-> where not exists(select * from khs where nim=mhs.nim);

+------------+------+

| nim | nama |

+------------+------+

| 0802100014 | Rika |

+------------+------+

1 row in set (0.02 sec)

Menampilkan nim, nama dari table mhs dimana yang tidak tercantum pada record tampilkan semua dari table khs dimana nim sama dengan nim yang ada di table mhs.

LATIHAN

a. Menampilkan data dosen (nip, nama) yang menjabat sebagai ketua jurusan sekaligus menjadi dosen wali.

mysql> select nip, namadosen from dosen

-> where nip=any(select distinct dosen_wali from kelas);

+-----------+-----------+

| nip | namadosen |

+-----------+-----------+

| 132312490 | Aulia |

| 132312478 | Putri |

| 132312455 | Ratna |

+-----------+-----------+

3 rows in set (0.03 sec)

b. Menampilkan data dosen(nip, nama) yg tidak menjabat sbg ketua jurusan.

mysql> select nip, namadosen from dosen

-> where not exists(select * from jurusan where ketua=dosen.nip);

Empty set (0.00 sec)

c. Menampilkan data dosen(nip,nama) yg tidak menjadi dosen wali

mysql> select nip, namadosen from dosen

-> where not exists(select * from kelas where dosen_wali=dosen.nip);

+-----------+-----------+

| nip | namadosen |

+-----------+-----------+

| 132312445 | Mirza |

| 132312433 | Budi |

+-----------+-----------+

2 rows in set (0.02 sec)

Tugas

1. Menampilkan daftar mahasiswa yg dibimbing seorang dosen wali

2. Menampilkan daftar mahsiswa suatu jurusan

3. Menampilkan daftar mahasiswa suatu jenjang program studi

Kesimpulan

Pada pertemuan ke 13 ini dapat disimpulkan bahwa dengan menggunakan MySQL kita bisa juga memodifikasi data sesuai data yang kita inginkan. Dari praktikum diatas kita dapat memahami perintah subquery untuk pemrosesan data mampu menggunakan SQL unutk menampilkan data denga Syarat berjenjang. Operatos subquery meliputi IN, EXISTS, ANY, dan ALL. Subquery merupakan query yang terletak dalam query yang lain.