Minggu, 27 November 2011

Query Join Tabel



Melakukan pen-JOIN-an Tabel

Relation/pemetaan/join pada dasarnya merupakan query sql yang berfungsi untuk membuat hubungan antara satu tabel dengan tabel yang lainnya yang cocok pada sebuah database yang nantinya akan dapat dibuat sebuah tabel sementara. Relation ini dapat dibentuk pada saat mendesain suatu database atau pada saat mengakses database (Retrieve Data).

Langkah awal pastikan kita telah membuat sebuah database yang akan di gunakan, disini admin membuat sebuah database dengan nama sekolah, sesuai dengan data kolom berikut : 


Kemudian, lakukan pengrelationan antar tabel, sesuai dengan hubungan antar tabel, seperti yang telihat di bawah : 
Contoh, relation pada tabel Nilai. Terlihat pada gambar di atas, kolom Siswa berhubungan dengan kolom ID pada tabel Siswa dan kolom Mata_Pelajaran berhubungan dengan kolom ID pada tabel Mata_Pelajaran, maka kita harus menghubungkan mereka. Dengan cara, masuk ke tabel Nilai, klik Strukture, klik Relation view (gbr01), pilih Internal Relations yang sesuai dengan nama kolom. Seperti yang telah dijelaskan sebelumnya, maka Internal Relations pada kolom Siswa adalah sekolah.siswa.ID dan Internal Relations pada kolom Mata_Pelajaran adalah sekolah.mata_pelajaran.ID (gbr02), lalu klik Save.

gbr01


gbr02
Lakukan hal yang sama untuk kolom yang lain. Kemudian isi data pada kolom masing-masing, contoh dari admin untuk tabel Siswa (gbr03), Mata Pelajaran (gbr04), Nilai (gbr05), Guru (gbr06), dan Jenis Kelamin (gbr07). Terlihat pada gambar di bawah, 

gbr03


gbr04


gbr05
gbr06
gbr07
Setelah hal tersebut selesai dilakukan, kita kini dapat melakukan penjoinan antar tabel. Seperti menampilkan sebuah tabel yang berisi NIS, siswa, mata pelajaran, guru, dan nilai. atau menampilkan mata pelajaran beserta guru yang mengajar..

Join

Query untuk menampilkan mata pelajaran beserta guru yang mengajar adalah :
SELECT a.nama_mp AS Mata_Pelajaran, b.nama AS Guru
FROM mata_pelajaran a
LEFT JOIN guru b ON a.guru = b.id
Akan muncul tabel : 


Query untuk menampilkan sebuah tabel yang berisi NIS, siswa, mata pelajaran, guru, dan nilai adalah :
SELECT b.nis AS NIS, b.nama_siswa AS Siswa, c.nama_mp AS Mata_Pelajaran, d.nama AS Guru, a.nilai AS Nilai
FROM nilai a
LEFT JOIN siswa b ON a.siswa = b.id
LEFT JOIN mata_pelajaran c ON a.mata_pelajaran = c.id
LEFT JOIN guru d ON c.guru = d.id
Akan muncul tabel : 


Keterangan dari penjoinan pertama :
SELECT a.nama_mp AS Mata_Pelajaran, b.nama AS Guru à tabel.kolom, dimana a dan b merupakan aliansi dari nama tabel yang diganti pada query di bawah, dan kolom yang dimaksud adalah kolom dari tabel yang telah dijoinkan. Sedangkan AS digunakan sebagai penggnati nama kolom yang akan keluar nantinya.
FROM mata_pelajaran a à tabel mata pelajaran di aliasikan namanya menjadi a. Tabel disini merupakan tabel utama, dimana banyak terdapat kolom yang diminta untuk di perlihatkan.
LEFT JOIN guru b on a.guru=b.id à kolom guru merupakan kolom pada tabel mata pelajaran yang berelasi dengan kolom yang menjadi primary key pada tabel guru, disini kolom tersebut adalah ID.

Semoga menjadi Ilmu yang bermanfaat ;)

Tidak ada komentar:

Posting Komentar

jangan lupa beri komentar dan join blognya yaa :)