Modul Praktikum Sistem Basis Data .............................................................................. 61
1. Satu komputer yang akan digunakan sebagai Server dan sejumlah komputer yang
digunakan sebagai Client dan terhubung dalam jaringan komputer baik dengan menggunakan kabel maupun dengan jaringan tanpa kabel nirkabel
2. LCD viewer, whiteboard dan spidol sebagai media presentasi instruktur
3. Software aplikasi MySQL Server 5.0 keatas, MySQL Query Browser
D. TEORI DASAR
1. Menampilkan Data dari Banyak Tabel
Menampilkan data dari dua tabel atau lebih, mensyaratkan adanya relasi keduanya antar table-table yang dimaksud. Guna memperjelas teori tersebut, marilah kita lihat
skema database ujimhsdb berikut;
Berdasarkan skema tersebut, kita dapat menampilkan data dari table Hasil Ujian, Jenis Ujian, Mahasiswa dan table Matakuliah secara bersamaan, atau kita juga dapat
menampilkan data dari table Matakuliah dan table Dosen secara bersamaan. Hal tersebut dimungkinkan karena setiap table yang dimaksud mempunyai hubungan relasi secara
langsung berkaitan secara logika, sebagaimana digambarkan pada skema tersebut. Adanya relasi kedua table yang biasanya ditandai oleh adanya field yang identik baik
nama, type data, ukurannya maupun maksud peruntukannya, memungkinkan kita untuk menampilkan data dari keduanya. Sebaliknya, bila tidak ada relasi secara langsung, maka
kita tidak dapat menampilkannya. Misalnya antara table Mahasiswa dengan table Dosen
Table Jenis Ujian
kode_ujian nama_ujian
Table Matakuliah
kode_mtk nama_mtk
sks kode_dosen
Table Hasil Ujian
nim kode_mtk
kode_ujian nilai
Table Dosen
kode_dosen nama_dosen
kelamin tmp_lahir
tgl_lahir alamat
Table Mahasiswa
nim nama_mhs
kelamin tmp_lahir
tgl_lahir alamat
Database Hasil Ujian Mahasiswa
Keterangan : Primary Key Foreign Key
Modul Praktikum Sistem Basis Data .............................................................................. 62
atau antara table Jenis Ujian dengan table Matakuliah. Untuk lebih jelasnya cobalah contoh berikut;
mysqlSELECT matakuliah.kode_mtk, matakuliah.nama_mtk, -matakuliah.sks, dosen.nama_dosen
-FROM matakuliah, dosen -WHERE dosen.kode_dosen= matakuliah.kode_dosen;
mysqlSELECT matakuliah.kode_mtk, matakuliah.nama_mtk,
-matakuliah.sks, dosen.nama_dosen -FROM matakuliah, dosen
-WHERE dosen.kode_dosen=matakuliah.kode_dosen -
AND dosen.nama_dosen LIKE “in”; Perintah pertama hanya terdapat 1 syarat, yaitu syarat relasi;
WHERE dosen.kode_dosen=matakuliah.kode_dosen;
Namun pada perintah kedua sudah terdapat 2 syarat, yaitu syarat relasi dan syarat penyaringan filter data, yaitu hanya untuk dosen yang namanya berawalan “in”;
WHERE dosen.kode_dosen=matakuliah.kode_dosen AND dosen.nama_dosen LIKE “in”;
pada syarat kedua inilah, kita dapat mengkombinasikan berbagai operator yang ada sebagai syarat penyaringan filtering data, sehingga data yang tampil sesuai dengan yang kita
harapkan. Bagaimana bila yang direlasikan lebih dari dua table?, misalnya akan menampilkan
data dari table Hasil Ujian, Jenis Ujian, Mahasiswa, Matakuliah dan table Dosen sekaligus. Hal yang perlu diperhatikan dalam merelasikan dua table atau lebih, adalah bagaimana kita
menentukan table acuan, yang bertindak sebagai penyedia data dasar acuan bagi table yang berelasi. Biasanya yang menjadi table acuan adalah table transaksional yaitu tabel yang
mengandung kunci tamu foreign key dan bukan table master yang hanya mengandung kunci utama primary key. Kalau kita lihat skema database ujimhsdb, maka yang paling
layak menjadi table acuan adalah table hsl_ujian. 2.
Menggunakan Nama Alias pada Kolom dan Tabel
Nama alias dapat digunakan sebagai pengganti judul kolom atau pengganti nama table. Penggantian judul kolom mapun nama table, biasanya bertujuan untuk memperjelas
ataupun memperpendek penyebutan judul kolom maupun nama table. Contoh berikut menunjukkan penggunaan nama alias pada judul kolom dan nama tabel;
Modul Praktikum Sistem Basis Data .............................................................................. 63
mysqlSELECT matakuliah.kode_mtk AS “Kode Matakuliah”, -
matakuliah.nama_mtk AS “Nama Matakuliah”, -matakul
iah.sks AS “SKS”, dosen.nama_dosen AS “Nama Dosen” -FROM matakuliah, dosen
-WHERE dosen.kode_dosen = matakuliah.kode_dosen;
mysqlSELECT mtk.kode_mtk, mtk.nama_mtk, -mtk.sks, dsn.nama_dosen
-FROM matakuliah AS mtk, dosen AS dsn -WHERE dsn.kode_dosen = mtk.kode_dosen;
3. Menggunakan perintah GROUP BY dan HAVING