Buat Akun DQLab & Akses Kelas Data Science Python, R, SQL, Excel GRATIS!

Perbedaan Operasi SQL pada Inner Join & Outer Join dalam

Belajar Data Science di Rumah 28-September-2022
https://dqlab.id/files/dqlab/cache/d1902ddc9902377d909996dd140f1ce1_x_Thumbnail800.jpg

SQL Join merupakan salah satu operasi yang sering digunakan oleh praktisi data berkaitan dengan manipulasi data. Klausa SQL Join mengombinasikan antara dua tabel ataupun lebih dalam operasi gabungan yang dapat dilakukan oleh bahasa pemrograman SQL. Operasi join mengindikasikan bagaimana kolom-kolom dari setiap tabel yang disediakan apakah cocok dengan data yang diperoleh satu sama lain. 


Adapun contoh yang paling umum adalah penggabungan antara dua tabel melalui kolom kunci utama dan kolom kunci asing. Penggunaan operasi Join bisa langsung kamu aplikasikan hanya dengan satu query saja namun secara tidak langsung juga bisa menggabungkan dua tabel, tiga tabel bahkan lebih hanya dalam sekali jalan saja.


Banyak tabel yang tersedia tentunya disesuaikan dengan kebutuhan data yang ada sahabat DQLab. Terkadang kita sendiri suka kebingungan dalam melakukan penggabungan pada banyak tabel yang berbeda. Pada dasarnya operasi Join dalam SQL yaitu Inner Join dan Outer Join. 


Outer Join sendiri juga masih dibagi lagi menjadi tiga jenis yaitu Left Outer Join, Right Outer Join, dan Full Outer Join. Dari sini, kalian langsung bertanya-tanya. Kira-kira perbedaannya apa sih Inner Join dan Outer Join? Keduanya kan sama-sama menggunakan operasi Join.


Tentunya masing-masing penggunaan sintaks JOIN ini memiliki fungsi yang berbeda-beda dan penulisan query yang berbeda-beda. 


Penasaran dengan perbedaan Inner Join dan Outer Join? Simak langsung penjelasan lewat artikel ini ya sahabat DQLab.


1. Apa Itu Inner Join dan Outer Join

Sebelum kita masuk ke perbedaan dari inner join atau outer join, kita akan bahas pengertian dari inner join dan outer join. Inner join merupakan operasi join yang didalamnya memiliki nilai yang sama di kedua tabel. Andaikata kita punya kedua tabel ataupun lebih maka syarat join dapat terpenuhi. 


Sedangkan Outer Join adalah operasi yang mencakup baris yang berada di bagian dalam tabel (bagian dalam) dengan baris yang tidak cocok diantara dua tabel. Outer Join pada dasarnya beda dengan Inner Join terkait bagaimana cara menangani kondisi tabel yang tidak cocok antara kedua tabel.

sql

Dari operasi Outer Join ini ternyata masih dibagi lagi sahabat DQLab. Berikut adalah penjelasannya:

Left Outer Join: Mengembalikan semua baris dari tabel sebelah kiri dan mencocokkan data yang sesuai diantara kedua tabel

Right Outer Join: mengembalikan semua baris dari tabel sebelah kanan dengan mencocokkan data yang pas antara kedua tabel

Full Outer Join: menggabungkan hasil antara kedua teknik Outer Join yaitu Left Outer Join dengan Right Outer Join.


sql

Mengutip W3school, terdapat beberapa perbedaan antara Inner dan Outer Join. Untuk lebih jelasnya kalian bisa lihat gambar di bawah ini 


Seperti yang ditunjukkan pada diagram di atas, ada dua entitas yang digambarkan dalam bentuk lingkaran yaitu tabel 1 dan tabel 2 dan kedua tabel berbagi beberapa data umum.


Inner Join akan mengembalikan area umum antara tabel-tabel ini (area yang diarsir hijau pada diagram di atas) yaitu semua record yang umum antara tabel 1 dan tabel 2.


Left Outer Join akan mengembalikan semua baris dari tabel 1 dan hanya baris dari tabel 2 yang umum untuk tabel 1 juga. Right Outer Join akan melakukan hal yang sebaliknya. Hal ini akan memberikan semua catatan dari tabel 2 dan hanya catatan yang cocok yang sesuai dari tabel 1. terakhir Selanjutnya, Full Outer Join akan memberikan kita semua record dari tabel 1 dan tabel 2.


Baca juga : Saatnya Belajar SQL, Kenali Rekomendasi Query SQL Bagi Pemula


2. Perbedaan Inner Join dan Outer Join dari Sisi Kinerja

Mari kita bandingkan Inner Join dengan Left Outer Join di SQL server. Berbicara tentang kecepatan operasi, Left Outer Join jelas tidak lebih cepat dari gabungan dalam. Sesuai definisinya, outer join, baik kiri atau kanan, harus melakukan semua pekerjaan inner join bersama dengan pekerjaan tambahan yang tidak memperpanjang hasil.


Outer Join diharapkan mengembalikan lebih banyak catatan yang selanjutnya meningkatkan total waktu eksekusi hanya karena kumpulan hasil yang lebih besar.

sql


Jadi, outer join lebih lambat daripada inner join jika dilihat dari sisi kecepatan operasi. Ada beberapa situasi tertentu dimana left outer join akan lebih cepat daripada inner join, tetapi kita tidak dapat terus menggantinya satu sama lain karena left outer join tidak sesuai dengan inner join.


3. Perbedaan Inner Join dan Outer Join dari Sisi Microsoft Access

Ketika kamu menggunakan beberapa sumber data dalam query MS Access, maka kamu bisa menerapkan metode JOIN untuk mengontrol rekaman data yang ingin dilihat, bergantung pada bagaimana sumber data ditautkan satu sama lain.


Dalam Inner Join, maka data yang terkait dari kedua tabel yang digabungkan dalam satu set hasil. Gabungan default di Access dan juga yang paling sering digunakan. 

sql


Jika anda menerapkan gabungan tetapi tidak secara eksplisit menentukan jenis gabungan itu, maka Access akan menganggap bahwa operasi Inner Join. Sedangkan outer Join maka semua data terkait dari kedua tabel digabungkan dengan benar, ditambah semua baris yang tersisa dari satu tabel. Dalam Outer Join, semua data bisa digabungkan sedapat mungkin.


Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data


4. Perbedaan Inner Join dan Outer Join dari Sisi Ukuran Data

Perbedaan antara inner join dan outer join ini juga bisa ditinjau dari ukuran datanya sahabat DQLab. Inner Join hanya menghasilkan tupel yang cocok dari kedua tabel.


Outer Join menampilkan semua tupel dari kedua tabel. Ukuran potensial dari database yang dikembalikan oleh Inner Join relatif lebih kecil dari Outer Join. Outer Join menghasilkan basis data yang relatif lebih besar.

sql


Bagaimana, apakah Sahabat DQ sudah lebih memahami SQL setelah membaca artikel ini? Yuk, level up skill SQL kamu dengan mulai belajar di DQLab! 


Dengan belajar SQL di DQLab, kamu akan memiliki beberapa keunggulan seperti dapat belajar secara live code, tersedia berbagai macam modul dengan beberapa bahasa pemrograman yang berbeda, serta tersedia ebook yang dapat diakses dengan gratis sebagai referensi tambahan dalam belajar. 


Selamat mencoba sahabat DQ!


Penulis: Reyvan Maulid



Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login