menggabungkan tabel mysql dengan inner join

Upload: irmawatiradjak

Post on 16-Oct-2015

33 views

Category:

Documents


0 download

TRANSCRIPT

Menggabungkan Tabel MySQL dengan INNER JOINTujuan untuk menggabungkan tabel adalah untuk menyajikan informasi secara lebih detail. Contohnya dari tabeldaftar_dosendan tabelmata_kuliahdiatas, tujuan kita adalah menyajikan informasi mata kuliah sekaligus nama dosen yang mengajar mata kuliah tersebut. Kita ingin menyajikan informasi yang berisi namamata kuliah, jumlah SKS, dannama dosenyang mengajar.QueryINNER JOINmemiliki beberapa variasi, yaituSELECT..INNER JOIN..ONdanSELECT..INNER JOIN..USING. Kita akan membahasnya satu persatu.

Menggabungkan Tabel MySQL dengan SELECT..INNER JOIN..ON, Format dasar dari penulisan querySELECT..INNER JOIN..ONadalah:SELECT nama_kolom_tampil FROM nama_tabel_pertama INNER JOIN nama_tabel_kedua ON nama_kolom_join_tabel_pertama = nama_kolom_join_tabel_kedua

nama_kolom_tampiladalah nama dari kolom yang akan kita tampilkan, bisa semua kolom dalam tabel, atau hanya kolom tertentu saja. nama_tabel_pertamaadalah nama tabel pertama yang akan digabung. nama_tabel_keduaadalah nama tabel kedua yang akan digabung. nama_kolom_join_tabel_pertamaadalah nama kolom yang akan digunakan sebagai join dari tabel pertama. nama_kolom_join_tabel_keduaadalah nama kolom yang akan digunakan sebagai join dari tabel kedua.Syarat untukINNER JOINadalah kedua tabel harus memiliki sebuah kolom dengan nilai yang sama yang akan kita gunakan dalam prosesJOIN. Dalam contoh kita, kolom tersebut adalahkolom NIPdari tabelnama_dosen, dan kolomNIP_dosendari tabelmata_kuliah. Perhatikan walaupun keduanya berisi NIP, namun nama kolomnya berbeda.Query untukSELECT..INNER JOIN..ONtabelmata_kuliahdengandaftar_dosenadalah:

mysql> SELECT nama_matkul,jumlah_SKS,nama_dosen FROM mata_kuliahINNER JOIN daftar_dosen ON NIP_dosen=NIP;+-------------------+------------+---------------+| nama_matkul | jumlah_SKS | nama_dosen |+-------------------+------------+---------------+| Basis data| 4 | Wirasto || Algoritma Pem 2| 2 | Arya pakaya || Komunikasi data | 3 | Farid || Matematika Dasar | 4 | Usman Gani || Bhs.ing Kom | 2 | Faizah yayuk || Sistem Operasi | 2 | Irfan Abbas |

+-------------------+------------+---------------+7 rows in set (0.00 sec)

Di dalamMySQL,INNER JOIN dapat diganti denganJOINsaja. Ketiga kata kunci ini memiliki fungsi yang sama. MySQL menyediakannya agar dapat kompatible dengan SQL dariRDBMSlainnya sepertiORACLEdanMS SQL.

QuerySELECT..INNER JOINini akan sering kita gunakan untuk menampilkan data dari beberapa tabel. Dalam mendesain database, sedapat mungkin kita mengeleminasi data yang redundan (sama) dari satu tabel besar menjadi beberapa tabel kecil, lalu menggabungkannya pada saat menampilkan data.