song

Rabu, 13 Oktober 2010

JOIN DALAM MYSQL

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 .

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

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


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


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

2 komentar: