Search This Blog

Left Join dan Right Join pada View SQL Server

Left Join atau Left Outer Join adalah clause untuk membuat view dari dua buah tabel yang dihubungkan melalui satu atau lebih field dari masing-masing tabel dimana tabel yang disebutkan pertama akan menampilkan semua data walaupun pada tabel kedua data tersebut tidak ada.

Misalnya tabel MT_ANGGOTA mempunyai data sebabai berikut:

NO_ANGGOTANAMAALAMAT
12.31ANDI HIDAYATJL. BUAHBATU 10
12.32YUSUF HADIJL. PASIRJADI 12
12.33FERY RUSLANJL. AHMAD YAHI 112
12.34DEDI DAHLANJL. GAJAH MADA 12

Tabel PENJUALAN mempunyai data sebagai berikut:

NO_SLIPTANGGALNO_ANGGOTA
13421-Feb-201012.31
13432-Feb-201012.33
13443-Feb-201012.33
13454-Feb-201012.34

Perintah Select query dengan Left Join sebagai berikut:



Akan menghasilkan output sebagai berikut:

NO_ANGGOTANAMANO_SLIPTANGGAL
12.31ANDI HIDAYAT13421-Feb-2010
12.34DEDI DAHLAN13454-Feb-2010
12.33FERY RUSLAN13432-Feb-2010
12.33FERY RUSLAN13443-Feb-2010
12.32YUSUF HADI

Pada baris data kelima untuk data YUSUF HADI pada kolom NO_SLIP dan TANGGAL datanya kosong atau null karena memang tidak ada data penjualan untuk NO_ANGGOTA 12.32.

Jika Clause LEFT JOIN atau LEFT OUTER JOIN diganti dengan INNER JOIN, maka output view yang dihasilkan adalah:

NO_ANGGOTANAMANO_SLIPTANGGAL
12.31ANDI HIDAYAT13421-Feb-2010
12.34DEDI DAHLAN13454-Feb-2010
12.33FERY RUSLAN13432-Feb-2010
12.33FERY RUSLAN13443-Feb-2010

Data YUSUF HADI tidak akan muncul karena caluse INNER JOIN hanya akan menampilkan data NO_ANGGOTA yang ada pada kedua tabel.

Clausa Right Join hampir sama dengan Left Join perbedaanya adalah pada clausa Right Join tabel yang datanya ditampilkan semua adalah tabel yang disebutkan terakhir.


No comments: