Anda di halaman 1dari 4

Belajar Join di MySql

Oleh: Irvan Riswanto

Selamat malam semuanya, setelah membahas tentang DDL, DML dan


SELECT, selanjutnya saya akan membahas tentang JOIN di Mysql. Sebelum
kita melakukan proses join, buatlah 2 buah tabel yaitu table mahasiswa dan
mahasiswa_detail seperti contoh dibawah ini :

Selamat malam semuanya, setelah membahas tentang DDL, DML dan SELECT, selanjutnya saya
akan membahas tentang JOIN di Mysql. Sebelum kita melakukan proses join, buatlah 2 buah tabel
yaitu table mahasiswa dan mahasiswa_detail seperti contoh dibawah ini :
tabel mahasiswa
nim

nama_mahasiswa

001

Ujang Doremi

002

Budi Fasola

003

Cecep Sukhoi

tabel mahasiswa_detail
nim

jenis_kelamin

tempat_lahir

001

Laki-laki

Bandung

003

Laki-laki

Cianjur

005

Perempuan

Sumedang

dari kedua tabel diatas dapat dilihat ada bahwa pada tabel mahasiswa tidak terdapat mahasiswa
dengan nim 005, sedangkan pada tabel mahasiswa_detail terlihat tidak ada mahasiswa dengan nim
002. Jikalau kita melakukan join biasa pasti ada data yang tidak muncul. Coba lakukan proses
seperti dibawah ini :
SELECT *
FROM mahasiswa m, mahasiswa_detail md
WHERE m.nim=md.nim
maka hasilnya seperti tabel dibawah ini :
nim

nama_mahasiswa

nim

jenis_kelamain

tempat_lahir

001

Ujang Doremi

001

Laki-laki

Bandung

003

Cecep Sukhoi

003

Laki-laki

Cianjur

mengapa demikiaan ?. Hal ini dikarenakan pada query diatas ada kondisi dimana nim yang ada pada
tabel mahasiswa (m.nim) itu harus sama dengan nim yang ada pada tabel mahasiswa_detail
(md.nim), maka dari itu data yang muncul hanya 2 data saja karena nim yang sama diantara kedua
tabel tersebut hanya ada 2 saja. Lalu bagaimana jika kita ingin menampilkan data yang ada di
mahasiswa tapi tidak di mahasiswa_detail ataupun sebaliknya ?. Kita dapat menggunakan LEFT
JOIN atau RIGHT JOIN seperti contoh di bawah ini :
SELECT *
FROM mahasiswa m LEFT JOIN mahasiswa_detail md
ON m.nim=md.nim
hasilnya seperti tabel dibawah ini :
nim

nama_mahasiswa

nim

jenis_kelamin

tempat_lahir

001

Ujang Doremi

001

Laki-laki

Bandung

002

Budi Fasola

NULL NULL

NULL

003

Cecep Sukhoi

003

Cianjur

Laki-laki

mengapa demikian ?. Karena Left Join ini digunakan untuk menampil semua data pada tabel yang di
sebelah kiri, maka dari itu tabel mahasiswa yang pada sintax diatas berada di sebelah kiri datanya
tampil semua.
SELECT *
FROM mahasiswa m RIGHT JOIN mahasiswa_detail md
ON m.nim=md.nim
hasilnya seperti tabel dibawah ini :
nim

nama_mahasiswa nim jenis_kelamin tempat_lahir

001

Ujang Doremi

001 Laki-laki

Bandung

003

Cecep Sukhoi

003 Laki-laki

Cianjur

005 Perempuan

Sumedang

NULL NULL

mengapa demikian ?. Karena Right Join ini digunakan untuk menampil semua data pada tabel yang
di sebelah kanan, maka dari itu tabel mahasiswa_detail yang pada sintax diatas berada di sebelah
kanan datanya tampil semua.

Sekian dulu pembahasan tetang JOIN nya, nantikan tutorial-tutorial berikutnya.

Tentang Penulis
Irvan Riswanto
Just An Ordinary People