Inner Join and Outer Join




Apa Itu Join? 

Inner Join adalah cara menghubungkan data yang di ambil dari tabel" melalui sebuah kolom yang menghubungkan tabel alamat dengan tabel nomor telepon berdasarkan nama seseorang.



Mengapa Join Itu penting?

Join memperbolehkan kita untuk mengambil data dari beberapa tabel melalui satu query. Hanya menggunakan sebuah tabel artinya kita hanya dapat menyimpan/memperoleh data yang terbatas atau justru menyimpan/memperoleh data yang terlalu banyak sehingga tabelnya menjadi kurang baik. Join menghubungkan satu tabel dengan tabel yang lain (inilah yang dimaksud dengan relational dari istilah relational database).


Ada berapa jenis join?

Berikut ini adalah empat tipe join di SQL (bersama tiga variannya). Sebagai pelengkap dari penjelasan yang ada, kami telah menyediakan contoh kode SQL.


Inner Join
Inner join mungkin tipe join yang paling banyak dipakai. Inner joinmengembalikan baris-baris dari dua tabel atau lebih yang memenuhi syarat.

Contoh :


SELECT columns

FROM TableA
INNER JOIN TableB
ON A.columnName = B.columnName;

Left [Outer] Join
Left outer join (sering disingkat left join) akan mengembalikan seluruh baris dari tabel disebelah kiri yang dikenai kondisi ON dan hanya baris dari tabel disebelah kanan yang memenuhi kondisi join.

Contoh :


SELECT columns

FROM TableA
LEFT OUTER JOIN TableB
ON A.columnName = B.columnName

Left [Outer] Join without Intersection
Join ini merupakan variasi dari left outer join. Pada join ini kita hanya akan mengambil data dari tabel sebelah kiri yang dikenai kondisi ON yang juga memenuhi kondisi join tanpa data dari tabel sebelah kanan yang memenuhi kondisi join.

Contoh


SELECT columns

FROM TableA
LEFT OUTER JOIN TableB
ON A.columnName = B.columnName
WHERE B.columnName IS NULL

Right [Outer] Join
Right outer join (sering disingkat right join) akan mengembalikan semua baris dari tabel sebelah kanan yang dikenai kondisi ON dengan data dari tabel sebelah kiri yang memenuhi kondisi join. Teknik ini merupakan kebalikan dari left outer join.

Contoh


SELECT columns

FROM TableA
RIGHT OUTER JOIN TableB
ON A.columnName = B.columnName
Right [Outer] Join without Intersection
Teknik ini merupakan variasi dari right outer join. Pada join ini kita hanya akan mengambil data dari tabel sebelah kanan yang dikenai kondisi ON yang juga memenuhi kondisi join tanpa data dari tabel sebelah kanan yang memenuhi kondisi join.

Contoh :


SELECT columns

FROM TableA
RIGHT OUTER JOIN TableB
ON A.columnName = B.columnName
WHERE A.columnName IS NULL

Full [Outer] Join
Full outer join (sering disingkat full join) akan mengembalikan seluruh baris dari kedua tabel yang dikenai ON termasuk data-data yang bernilai NULL.

Contoh :


SELECT columns

FROM TableA
FULL JOIN TableB
ON A.columnName = B.columnName

Full [Outer] Join without Intersection
Variasi lain dari full outer join yang akan mengembalikan seluruh data dari kedua tabel yang dikenai ON tanpa data yang memiliki nilai NULL.

Contoh :


SELECT columns

FROM TableA
FULL JOIN TableB
ON A.columnName = B.columnName
WHERE A.columnName IS NULL
OR B.columnName IS NULL

Komentar