JOIN dalam
mysql adalah Salah satu fitur SQL yang paling berguna untuk menggabungkan table dengan query – query yang mendapatkan kembali data. Join adalah salah satu dari
beberapa operasi paling penting yang dapat anda lakukan dengan menggunakan
statement SELECT
1. Macam – macam Bentuk Dari JOIN
1. Macam – macam Bentuk Dari JOIN
a.
INNER JOIN
adalah Join yang menciptakan table hasil baru dengan menggabungkan nilai nilai
kolom dari dua table ( A dan B ) didasarkan pada join predikat
CONTOH : SELECT supplier.Nama, Barang.Nama, Barang.Harga
FROM supplier INNER JOIN Barang
ON supplier.KodeSup = Barang.KodeSup
CONTOH : SELECT supplier.Nama, Barang.Nama, Barang.Harga
FROM supplier INNER JOIN Barang
ON supplier.KodeSup = Barang.KodeSup
b.
SELF JOIN adalah
Join yang bergabung dengan sebuah table ke dirinya sendiri .
CONTOH : SELECT c1.KodeCus, c1.Nama, c1.Kontak
FROM Customer c1, Customer c2
WHERE c1.Nama = c2.Nama
AND c2.Kontak='Jim Jones'
OUTPUT
KodeCus Nama Kontak
------- ---- ------
1000000003 Fun4All Jim Jones
1000000004 Fun4All Denise L. Stephens
CONTOH : SELECT c1.KodeCus, c1.Nama, c1.Kontak
FROM Customer c1, Customer c2
WHERE c1.Nama = c2.Nama
AND c2.Kontak='Jim Jones'
OUTPUT
KodeCus Nama Kontak
------- ---- ------
1000000003 Fun4All Jim Jones
1000000004 Fun4All Denise L. Stephens
c.
NATURAL JOIN adalah Join yang dimana dilakukan
dengan menggunakan wildcard ( SELECT * ) untuk suatu table dan sub-kumpulan
eksplit dan field untuk semua table lainya.
CONTOH : SELECT Customer.KodeCus, Penjualan.NoFaktur
FROM Customer INNER JOIN Penjualan
ON Customer.KodeCus = Penjualan.KodeCus
Untuk
mendapatkan kembali daftar semua pelanggan, termasuk pelanggan yang
tidak membuat pesanan, Anda dapat melakukan hal berikut :
INPUT
SELECT Customer.KodeCus, Penjualan.NoFaktur
FROM Customer LEFT OUTER JOIN Penjualan
ON Customer.KodeCus = Penjualan.KodeCus
OUTPUT
KodeCus NoFaktur
------- --------
1000000001 20005
1000000001 20009
1000000002 NULL
1000000003 20006
1000000004 20007
1000000005 20008
CONTOH : SELECT Customer.KodeCus, Penjualan.NoFaktur
FROM Customer INNER JOIN Penjualan
ON Customer.KodeCus = Penjualan.KodeCus
Untuk
mendapatkan kembali daftar semua pelanggan, termasuk pelanggan yang
tidak membuat pesanan, Anda dapat melakukan hal berikut :
INPUT
SELECT Customer.KodeCus, Penjualan.NoFaktur
FROM Customer LEFT OUTER JOIN Penjualan
ON Customer.KodeCus = Penjualan.KodeCus
OUTPUT
KodeCus NoFaktur
------- --------
1000000001 20005
1000000001 20009
1000000002 NULL
1000000003 20006
1000000004 20007
1000000005 20008
d.
OUTER JOIN
adalah sebuah join yang tidak memerlukan setiap record dalam dua table
bergabung untuk memiliki catatan cocok . table bergabung dengan mempertahankan
setiap catatan – bahkan jika tidak ada catatan yang cocok lainya ada. Luar
bergabung membagi lebih lanjut lebih ke kiri luar bergabung , kanan luar
bergabung , dan penuh luar bergabung , tergantung pada table (s) mempertahankan
satu baris dari ( kiri, kanan atau keduanya )
CONTOH :
INPUT
SELECT Customer.KodeCus, Penjualan.NoFaktur
FROM Customer INNER JOIN Penjualan
ON Customer.KodeCus = Penjualan.KodeCus
CONTOH :
INPUT
SELECT Customer.KodeCus, Penjualan.NoFaktur
FROM Customer INNER JOIN Penjualan
ON Customer.KodeCus = Penjualan.KodeCus
Tidak ada komentar:
Posting Komentar