Select Bertingkat Join Table (Inner Join dan Outer Join)
Assalamualaikum Wr. Wb saya Vigo Restiadi Kali ini saya akan menjelaskan tentang Join dalam My SQL Tanpa bertele tele langsung saja simak penjelasan berikut ini.
Apa Itu Join?
Join adalah perintah SQL yang berfungsi untuk melakukan relasi antara kedua tabel atau lebih yang saling memiliki hubungan / relasi ( ditandai dengan adanya primary key pada tabel master dan foregn key pada tabel transaksi ).Cara kerja join ialah dengan mencari kecocokan kolom tertentu pada sebuah tabel dengan kolom tertentu pada tabel lain, kemudian menampilkan hasilnya sebagai satu set data gabungan. Secara garis besar, terdapat 3 macam join, yaitu INNER JOIN, LEFT JOIN dan RIGHT JOIN. Namun, selain dari 3 macam tersebut, terdapat tambahan beberapa varian tergantung dari RDBMS yang digunakan.
Jenis Jenis Join
Ada beberap jenis join dimana diantaranya adalah :
1. Inner Join
2. Outer Join
- Right Join
- Left Join
Tetapi pada dasarnya jika ingin menggabungkan kedua tabel atau lebih maka cukup menggunakan perintah JOIN saja maka tabel akan saling berelasi asalkan data yang direlasikan benar.
Selain menggunakan Join cara lain untuk menghubungkan antara tabel dapat juga digunakan perintah WHERE.
1. Inner Join
Dengan inner join, tabel akan digabungkan dua arah, sehingga tidak ada data yang NULL di satu sisi. Sebagai contoh, kita akan menggabungkan tabel pelanggan dan pesan dimana kita akan menampilkan daftar pelanggan yang pernah melakukan pemesanan (transaksi). Misalkan isi tabel pelanggan dan pesan adalah sebagai berikut :
Tabel pelanggan (hanya ditampilkan field id_pelanggan, nm_pelanggan dan email)
Contoh isi tabel pelanggan
Tabel pesan.
Contoh isi tabel pesan
2. Outer Join
Dengan outer join, tabel akan digabungkan satu arah, sehingga memungkinkan ada data yang NULL (kosong) di satu sisi. Sebagai contoh, kita akan menggabungkan tabel pelanggan dan pesan dimana kita akan menampilkan daftar pelanggan yang pernah melakukan pemesanan (transaksi).
Outer Join terbagi menjadi 2 (dua) yaitu LEFT JOIN dan RIGHT JOIN. Berikut ini bentuk umum dan contohnya:
LEFT JOIN.
Bentuk umum:
SELECT tabel1.*, tabel2.*FROM tabel1 LEFT JOIN tabel2ON tabel1.PK=tabel2.FK;
Contoh perintah SQL:
SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesanFROM pelanggan LEFT JOIN pesanON pelanggan.id_pelanggan=pesan.id_pelanggan;
Hasilnya:
Berbeda dengan hasil sebelumnya (inner join), penggunaan left join akan menampilkan juga data pelanggan dengan id P0003, walaupun pelanggan tersebut belum pernah bertransaksi. Dan pada kolom id_pesan dan tgl_pesan untuk pelanggan P0003 isinya NULL, artinya di tabel kanan (pesan) pelanggan tersebut tidak ada.
RIGHT JOIN
Bentuk umum:
SELECT tabel1.*, tabel2.*FROM tabel1 RIGHT JOIN tabel2ON tabel1.PK=tabel2.FK;
Contoh perintah SQL:
SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesanFROM pelanggan RIGHT JOIN pesanON pelanggan.id_pelanggan=pesan.id_pelanggan;
Hasilnya:
Dengan right join, tabel yang menjadi acuan adalah tabel sebelah kanan (tabel pesan), jadi semua isi tabel pesan akan ditampilkan. Jika data pelanggan tidak ada di tabel pelanggan, maka isi tabel pesan tetap ditampilkan.
Menggabungkan 3 Tabel atau Lebih
Untuk menggabungkan tiga tabel atau lebih, pada dasarnya sama dengan penggabungan 2 (dua) tabel. Sebagai contoh misalnya kita akan menampilkan barang-barang yang dipesan beserta nama barang dan harganya untuk pemesanan dengan nomor 1, sedemikian sehingga hasilnya menjadi sebagai berikut:
Reviewed by Vigo Restiadi
on
January 18, 2018
Rating:







ini mirip blog sebelah bang
ReplyDeleteini copy ya banggg
ReplyDelete