SQL JOIN

Apa itu join? 
Join adalah cara untuk menghubungkan data yang diambil dari tabel-tabel melalui sebuah kolom yang menghubungkan mereka. Misal, pembaca mungkin ingin menghubungkan tabel alamat dengan tabel nomor telepon berdasarkan nama seseorang (contoh: "Berikan saya alamat dan nomor telepon seseorang yang bernama John Smith."). 

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). 

BASIC COMMAND (Perintah Dasar JOIN pada Database) 
Perintah dasar JOIN yang perlu anda ketahui, sebagai berikut: 
SELECT table_a.*, table_b.id, table_b.name, table_b.id_relation 
FORM table_a 
JOIN table_b 
ON table_a.id = table_b.id_relation 
Keterangan: 
 SELECT, adalah Perintah yang digunakan untuk menunjuk atribut yang akan ditampilkan an ketika        melakukan select data pada database.
  FROM, adalah perintah / command yang digunakan untuk menunjuk tabel mana pada database yang akan di SELECT pertama kali dalam join table. 
 JOIN, adalah suatu perintah yang digunakan untuk menunjuk tabel yang berelasi dengan tabel yang        telah di definisikan pertama. 
 ON adalah suatu perintah atau command yang digunakan untuk menunjukkan relasi antar table yang  sedang di join kan, dengan cara mendefinisikan Primary Key pada tabel pertama selalu diikuti            dengan  "=" (tanda sama) dengan, lalu diikuti dengan mendefinisikan Foreign Key pada tabel kedua.  (Primary key pada table pertama dengan Forigen Key pada table ke-2, bisa dikatakan berelasi apabila  value / nilainya sama). 
 Jika anda ingin menambahkan kondisi anda dapat menambahkan WHERE atau yang lainnya sesuai yang anda butuhkan pada akhir query sebelum tanda ";" (titik koma). 

 Ada berapa jenis join? 
Pada umumnya, terdapat empat jenis JOIN di SQL yakni: 
• INNER JOIN 
• LEFT JOIN 
• RIGHT JOIN 
• FULL JOIN 
Berikut akan dijabarkan beberapa sql join dengan contoh-contohnya

ERD

Berikut contoh-contoh dari SQL JOIN berdasarkan gambar ERD dan tabel di atas:

--FUUL 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 1:                                            




               
Contoh 2:


--CROSS JOIN

SQL CROSS JOIN menghasilkan himpunan hasil yang mana jumlah baris dalam tabel pertama dikalikan dengan jumlah baris dalam tabel kedua jika tidak ada klausa WHERE digunakan bersama dengan CROSS JOIN. hasil seperti ini disebut sebagai produk Cartesian. Jika klausa WHERE digunakan dengan CROSS JOIN,  berfungsi mirip-mirip seperti INNER JOIN.

Contoh 1:

Contoh 2:



--INNER JOIN 

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

Contoh 1:

Contoh 2:

--OUTER JOIN 

Bentuk kondisi join untuk mencari nilai join yang memenuhi dari kedua table, plus nilai yang tidak memenuhi dari salah satu sisi table tersebut.

Contoh 1:

Contoh 2:

--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 1:


Contoh 2:



--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 1:

 


Contoh 2:

--FULL OUTER JOIN  

Kata kunci FULL OUTER JOIN digunakan untuk mengembalikan semua rekaman ketika ada kecocokan dalam catatan tabel kiri (tabel1) atau kanan (tabel2).

Contoh 1:

Contoh 2:



--EQUAL JOIN 

Equi Join merupakan Join yang menggunakan tanda equal (=) untuk membandingkan Operatornya.

Contoh 1:


Contoh 2:



--SELF JOIN 

Self JOIN adalah gabungan reguler, tetapi tabel bergabung dengan dirinya sendiri.

Contoh 1:


contoh 2:



--NATURAL JOIN

Natural join adalah perintah untuk membuat penulisan lebih mudah, natural join merupakan proses yang memiliki kesamaan dalam semua nilai yang memiliki nama yang sama diantara tabel.

Contoh 1:


Contoh 2:
























Komentar