OUTER JOIN

 


Apa itu OUTER JOIN?

Outer join adalah operasi penggabungan tabel dalam database relasional yang menggabungkan semua baris dari kedua tabel dengan baris yang cocok dari tabel lainnya, dan menampilkan nilai NULL untuk kolom-kolom yang tidak memiliki nilai yang cocok. Ada dua jenis outer join: left outer join dan right outer join.

Dalam konteks SQL, sintaks untuk left outer join terlihat seperti ini:


Di sini, tabel_kiri dan tabel_kanan adalah nama dari dua tabel yang digabungkan, dan kolom adalah kolom pada masing-masing tabel yang digunakan untuk mencocokkan baris. Klausa ON menentukan kondisi yang harus dipenuhi agar sebuah baris dimasukkan ke dalam hasil.

Left outer join menggabungkan semua baris dari tabel kiri dengan baris yang cocok dari tabel kanan, dan menampilkan nilai NULL untuk kolom-kolom yang tidak memiliki nilai yang cocok pada tabel kanan. Dengan kata lain, left outer join mempertahankan semua data dari tabel kiri, bahkan jika tidak ada data yang cocok dari tabel kanan.

Sintaks untuk right outer join terlihat seperti ini:


Di sini, tabel_kiri dan tabel_kanan adalah nama dari dua tabel yang digabungkan, dan kolom adalah kolom pada masing-masing tabel yang digunakan untuk mencocokkan baris. Klausa ON menentukan kondisi yang harus dipenuhi agar sebuah baris dimasukkan ke dalam hasil.

Right outer join menggabungkan semua baris dari tabel kanan dengan baris yang cocok dari tabel kiri, dan menampilkan nilai NULL untuk kolom-kolom yang tidak memiliki nilai yang cocok pada tabel kiri. Dengan kata lain, right outer join mempertahankan semua data dari tabel kanan, bahkan jika tidak ada data yang cocok dari tabel kiri.

Outer join sangat berguna dalam situasi di mana kita perlu menggabungkan data dari dua tabel dan mempertahankan semua data dari kedua tabel, bahkan jika tidak ada data yang cocok. Outer join juga dapat digunakan untuk menyaring data dan mengoptimalkan performa database, karena hanya baris yang relevan yang dimasukkan ke dalam hasil.

Fungsi OUTER JOIN 

Fungsi dari outer join adalah untuk menggabungkan semua baris dari dua tabel, bahkan jika tidak ada baris yang cocok pada salah satu tabel. Dalam sebuah outer join, semua baris dari tabel kanan atau tabel kiri akan dimasukkan ke dalam hasil, bahkan jika tidak ada baris yang cocok pada tabel lainnya. Dalam sebuah left outer join, semua baris dari tabel kiri akan dimasukkan ke dalam hasil, bahkan jika tidak ada baris yang cocok dari tabel kanan. Dalam sebuah right outer join, semua baris dari tabel kanan akan dimasukkan ke dalam hasil, bahkan jika tidak ada baris yang cocok dari tabel kiri.

Outer join sangat berguna dalam situasi di mana kita perlu mempertahankan semua data dari kedua tabel, bahkan jika tidak ada data yang cocok. Hal ini memungkinkan kita untuk melihat semua data yang relevan dalam sebuah analisis atau permintaan data, dan membuat keputusan yang lebih baik berdasarkan pada informasi yang lengkap. Outer join juga dapat digunakan untuk mengoptimalkan performa database, karena hanya baris yang relevan yang dimasukkan ke dalam hasil.

Contoh penggunaan OUTER JOIN

Outer join adalah jenis join pada SQL yang mengembalikan baris dari kedua tabel yang cocok dan tidak cocok dengan kondisi join yang ditentukan. Berikut adalah contoh outer join pada dua tabel 'orders' dan 'customers':

Tabel 'orders':

Tabel 'customers':

Contoh outer join pada tabel 'orders' dan 'customers' berdasarkan kolom 'customer_id':


Agar lebih jelas :

SELECT orders.order_id, orders.order_date, customers.customer_name, customers.customer_email FROM orders LEFT JOIN customers ON orders.customer_id = customers.customer_id;

Hasilnya adalah sebagai berikut:

Pada contoh ini, menggunakan left outer join. Outer join menghasilkan semua baris dari tabel kiri dan hanya baris dari tabel kanan yang cocok dengan kondisi join. Oleh karena itu, dalam contoh ini, seluruh baris dari tabel 'orders' ditemukan dalam hasil, serta baris pertama dan kedua dari tabel 'customers'. Namun, baris ketiga dari tabel 'customers' tidak ditemukan dalam hasil, karena tidak ada customer_id yang cocok dengan baris ketiga dari tabel 'orders'. Sebagai gantinya, ada nilai NULL untuk customer_name dan customer_email pada baris ketiga.

Komentar

Postingan populer dari blog ini

DATABASE

DOCKER CONTAINER

CONSTRAINT