JOIN dalam SQL adalah sebuah klausa yang digunakan untuk melakukan penggabungan baris dari dua atau lebih tabel berdasarkan kolom yang memiliki nilai terkait. Tujuan utamanya adalah untuk mendapatkan satu set data dengan informasi yang utuh dan komprehensif. “Lengkap” yang dimaksud di sini adalah susunan data yang didapatkan dari gabungan kolom-kolom hasil relasi antar tabel tersebut.
Untuk memenuhi kebutuhan pengambilan data yang beragam, perintah JOIN dibagi menjadi beberapa jenis, yaitu OUTER JOIN, INNER JOIN, RIGHT JOIN, dan LEFT JOIN.
Perbedaan Jenis-Jenis SQL JOIN
Berikut adalah penjelasan mengenai berbagai jenis klausa JOIN beserta contoh sintaks penulisannya untuk membantu Anda memahami perbedaannya:
1. FULL OUTER JOIN
Outer join (atau Full Outer Join) akan mengembalikan semua record atau baris data, baik yang memiliki nilai kecocokan (sama) maupun yang tidak sama pada kedua tabel yang digabung. Jika tidak ada persamaan data di antara kedua tabel tersebut, maka bagian yang kosong akan secara otomatis diberikan nilai NULL pada hasil join-nya.
Sintaks penulisan:
SQL
SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition;
2. LEFT JOIN
Left Join merupakan operasi yang akan mengembalikan semua record dari tabel sebelah kiri (tabel pertama) dari kedua tabel yang digabungkan. Seluruh data dari tabel kiri akan tetap ditarik dan ditampilkan, walaupun nilai pada tabel kiri tersebut tidak memiliki kesamaan dengan data pada tabel kanan (tabel kedua). Data di tabel kanan yang tidak memiliki pasangan akan digantikan dengan NULL.
Sintaks penulisan:
SQL
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;
3. RIGHT JOIN (Pelengkap)
Sebagai kebalikan dari Left Join, klausa Right Join akan mengembalikan semua record dari tabel sebelah kanan (tabel kedua), beserta data yang memiliki kecocokan dari tabel sebelah kiri. Jika tidak ada data yang cocok di tabel kiri, maka hasil dari sisi kiri akan bernilai NULL.
Sintaks penulisan:
SQL
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
4. INNER JOIN (Pelengkap)
Inner Join adalah jenis klausa yang paling sering digunakan. Berbeda dengan Outer, Inner Join bekerja lebih ketat dengan hanya mengembalikan baris yang datanya memiliki kecocokan (irisan) di kedua tabel yang digabungkan.
Sintaks penulisan:
SQL
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;






