Query Untuk Menampilkan Data dari Dua Tabel
Posted by windkuat on
Wednesday, April 28, 2010
Hai sobat… udah lama nih ga posting, habisnya ge mikirin kuliah mlulu, skarang udah bisa dunx posting lagi…
Kali ini Edukita akan menampilkan bagaimana menampilkan data dengan query SQL SELECT untuk menampilkan data dengan hubungan antar dua tabel atau lebih.
Dalam hal ini saya akan membahas bagaimana menampilkan data pada Sistem Informasi Akademik sederhana yang terdiri atas 3 tabel yaitu: Tabel Mahasiswa, Tabel Jurusan dan Tabel Program Studi. Mari kita mulai saja dari pembuatan tabel.
- Buka MySQL dan buat database dengan nama siakad (create database siakad).
- Dan buat tabel mahasiswa dengan query:
dan isi dengan data hingga seperti gambar dibawah ini
CREATE TABLE mhs (
idmhs VARCHAR(10) NOT NULL,
prodi_idprodi VARCHAR(2) NOT NULL,
nama_mhs VARCHAR(30) NULL,
PRIMARY KEY(idmhs),
INDEX mhs_FKIndex1(prodi_idprodi)
);
Selanjutnya buat tabel Jurusan
CREATE TABLE jurusan (dan isi dengan data hingga seperti gambar dibawah ini
idjurusan VARCHAR(3) NOT NULL AUTO_INCREMENT,
nm_jurusan VARCHAR(20) NULL,
PRIMARY KEY(idjurusan)
);
Terakhir membuat tabel Prodi
CREATE TABLE prodi (dan isi dengan data hingga seperti gambar dibawah ini
idprodi VARCHAR(2) NOT NULL,
jurusan_idjurusan VARCHAR(3) NOT NULL,
nm_prodi VARCHAR(20) NULL,
PRIMARY KEY(idprodi),
INDEX prodi_FKIndex1(jurusan_idjurusan)
);
- Selanjutnya yaitu kita menyusun query agar menghasilkan tampilan sebagai berikut:
query untuk tampilan diatas adalah sbb:
SELECT *
FROM mhs m, jurusan j, prodi p
where(j.idjurusan = p.jurusan_idjurusan)and(m.prodi_idprodi = p.idprodi);
- Tahap selanjutnya yaitu merapikan field(kolom) yang tidak diperlukan, misalnya kolom idprodi dan id jurusan. Field tersebut diperlukan oleh developer sebagai primary key tetapi tidak untuk seorang user yang hanya membutuhkan informasi terhadap tabel.
Mari kita rapikan Query kita menjadi:
SELECT m.idmhs, m.nama_mhs, j.nm_jurusan, p.nm_prodi
FROM mhs m, jurusan j, prodi p
where(j.idjurusan = p.jurusan_idjurusan)and(m.prodi_idprodi = p.idprodi);
Maka tabel yang akan tampil adalah sebagai berikut: