JOIN
Join
adalah kata kunci yang di gunakan pada sql/ansi untuk melakukan query dua tabel
atau lebih yang di dasarkan hubungan anatar kolom tertentu dalam tabel.
Ada
beberapa perintah join yaitu :
1.
Inner
Join
Inner join adalah join yang
hanya akan menampilkan baris untuk data yang memiliki nilai yang sama/ yang ada
pasangannya pada field kunci dengan tabel yang berelasi. Inner join merupakan
jenis join yang paling umum yang dapat digunakan pada semua database. Jenis ini
dapat digunakan bila ingin merelasikan dua set data yang ada di tabel, letak
relasinya setelah pada perintah ON pada join.
Bentuk baku perintah inner join :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> INNER JOIN
<tabel2> ON <key.tabel1> = <key.tabel2>
Contoh :
2. Outer Join
Outer join akan menghasilkan sebuah data dari
sebuah tabel dan membatasi data dari tabel lainnya. Terdapat 3 tipe Outer join
yaitu Left Join, Right Join, dan Full Join.
·
Left Outer Join
Operasi Join tipe ini akan
menampilkan semua isi tabel sisi kiri, walaupun data di pasangan joinnya yg
disisi kanan nilainya tidak sama ataupun bernilai null.
Bentuk perintah Left Outer Join :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> LEFT JOIN
<tabel2> ON<key.tabel1> = <key.tabel2>
·
Right Outer Join
Operasi Join tipe ini akan
menampilkan semua isi tabel sisi Kanan, walaupun data di pasangan joinnya yg
disisi kiri nilainya tidak sama ataupun bernilai null.
Bentuk perintah Right Outer Join :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> RIGHT JOIN
<tabel2>ON <key.tabel1> = <key.tabel2>
·
Full Outer Join.
Gabungan dari left outer join
dan right outer join.
Kegunaan
dari Outer join adalah untuk mencari record – record piatu, artinya record yang
ada di sebuah tabel tetapi tidak mempunyai pasangan di tabel lain.
3.
Cross
Join
Sebuah penggabungan yang meliputi lebih dari
satu tabel tanpa syarat apapun. Hasil dari Cross Join akan menghasilkan produk
Kartesian. Cross join kadangkala disebut juga sebagai Cartesian Product.
Bila menggunakan cross join, maka hasil dari cross join akan menciptakan hasil
yang didasarkan pada semua kemungkinan kombinasi baris dalam kedua set data.
Bentuk perintah dari cross join adalah :
SELECT
<field1>,<field2>,<fieldn> FROM <tabel1> CROSS JOIN
<tabel2>
atau
SELECT <field1>,<field2>,<fieldn>
FROM <tabel1>, <tabel2>
4.
Union
Join
Penggunaan relasi UNION adalah untuk menggabung hasil dari syntak
LEFT OUTER JOIN dengan RIGHT OUTER JOIN seperti pada gambar di bawah.
Syntak :
select*from [Tabel_1] natural left outer join [Tabel_2]
union
select*from [Tabel_1] natural right outer join
[Tabel_2];
5. FULL JOIN
Penggunaan FULL JOIN adalah untuk menampilkan
kedua table dengan record – record yang bersesuaian saja. Field yang berelasi
ditampilkan sekali di awal table atau paling kiri. Lihat gambar di bawah.
Syntak :
select*from [Tabel_1] full join [Tabel_2] using([field yang berelasi]);
Penggunaan FULL JOIN juga bisa seperti gambar
di bawah.
Syntak :
select*from [Tabel_1] full join [Tabel_2];
Hasil dari syntak di atas sama seperti pada
penggunaan STRAIGHT JOIN dan CROSS JOIN.
JOIN SISTEM CATERING ONLINE
1.
Input
: Inner Join
Proses : Table customer dan Member
select
* from Customer inner join Member on Customer.ID_Customer=Member.ID_Customer
Output : Data di bawah adalah inner join
antara table customer dan member
1.
Input
: Outer Join
Proses : Table Customer dan Member
select
Customer.Nama_Customer, Member.No_Member from Customer full outer join Member
on Customer.ID_Customer=Member.ID_Customer order by Customer.Nama_Customer
Output : Data di bawah adalah outer join
antara table customer dan member
1.
Input
: Left Join
Proses : Table Customer dan
Transfer_Rekening
select
Customer.Nama_Customer, Transfer_Rekening.No_Rek from Customer left join
Transfer_Rekening on Customer.ID_Customer=Transfer_Rekening.ID_Customer order
by Customer.Nama_Customer
1.
Input
: Right Join
Proses :Table Customer dan Catering
select
Customer.Nama_Customer, Catering.Jumlah_Menu from Customer right join Catering
on Customer.ID_Customer=Catering.ID_Customer order by Customer.Nama_Customer
Output : Data di bawah adalah outer join
antara table Customer dan Catering
1.
Input
: Cross Join
Proses : Table Member dan
Transfer_Rekening
select
Member.No_Member, Member.ID_Customer, Transfer_Rekening.No_Rek,
Transfer_Rekening.Nama_Pemilik_Rek,Transfer_Rekening.Total_Pembayaran from
Member cross join Transfer_Rekening
Output : Data di bawah adalah outer join
antara table Member dan Transfer_Rekening
1.
Input
: Union Select
Proses : Table Customer dan Catering
Output : Data di bawah adalah outer join
antara table Customer dan Catering
0 komentar:
Posting Komentar