JULY SPECIAL ! DISKON 96%
Belajar Data Science Bersertifikat, 12 Bulan hanya 180K!
1 Hari 14 Jam 55 Menit 7 Detik

Apa Beda SQL Natural Join, Cross Join & Inner Join?

Belajar Data Science di Rumah 21-Mei-2024
https://dqlab.id/files/dqlab/cache/2-longtail-senin-06-2024-05-21-205901_x_Thumbnail800.jpg

SQL menjadi salah satu tools yang sering digunakan oleh data analyst. Query yang sederhana sudah sangat membantu praktisi data mengenali data yang dimiliki lebih dalam. Hal ini juga sering dilakukan oleh data analyst jika ingin mengekstrak sejumlah data tertentu yang lebih spesifik. Manajemen database menggunakan SQL dinilai sangat efisien sehingga sudah banyak perusahaan yang mengaplikasikannya.


SQL memiliki beragam fungsi, salah satunya Join Table. Fungsi ini pun juga memiliki beragam jenis. Diantaranya natural join, cross join, dan inner join. Masing-masing memiliki ciri khas dan kegunaannya tersendiri. Apa saja itu? Yuk simak penjelasannya! 


1. Definisi Natural Join, Cross Join, dan Inner Join

Untuk mengetahui perbedaan masing-masing jenis join akan lebih baik Sahabat DQ mulai dengan memahami definisinya terlebih dahulu. Berikut definisi natural join, cross join, dan inner join.

  • Natural Join: penggabungan 2 tabel atau lebih berdasarkan pada nama kolom yang sama. Hasil dari penggabungan tersebut akan berisi semua atribut pada kedua tabel, namun untuk kolom yang sama hanya muncul satu kolom saja. 

  • Cross Join: penggabungan 2 tabel atau lebih dengan hasil yang konsepnya seperti perkalian kartesian. Artinya hasil penggabungan akan memiliki nilai duplikat pada masing-masing kolom sampai kolom lain yang bersesuaian selesai digabungkan. 

  • Inner Join: penggabungan 2 tabel atau lebih dengan menspesifikkan kolom yang menjadi acuan menggunakan klausa ON. Hasil dari penggabungan adalah semua kolom yang dimiliki oleh tabel-tabel tersebut, bahkan kolom yang sama juga termasuk. Artinya, kolom tersebut akan terduplikasi karena digabung apa adanya


Baca juga : Bootcamp Data Analyst with SQL and Python


2. Contoh Penggunaan Natural Join, Cross Join, dan Inner Join

Agar lebih mudah membedakan masing-masing contoh, sebaiknya Sahabat DQ perhatikan contoh berikut. Misalkan terdapat tabel ‘Siswa’ dan tabel ‘Nilai’.

SQL

Natural Join

Untuk natural join, kalian bisa menggunakan query seperti berikut.

SQL

Sehingga akan diperoleh output seperti berikut ini.

SQL

Hasil natural join menunjukkan bahwa penggabungan berdasarkan tabel ‘Nomor Absen ‘ yang sama. Itulah alasannya hanya ada 3 baris data. Selain itu, tabel ‘Nomor Absen’ hanya muncul satu kali


Cross Join

Untuk cross join, kalian bisa menggunakan query seperti berikut.

SQL

Sehingga akan diperoleh output seperti berikut ini.

SQL

Perhatikan bahwa hasil dari cross join adalah melakukan penggabungan untuk semua atribut yang bersesuain. 


Inner Join

Untuk inner join, kalian bisa menggunakan query seperti berikut.

SQL

Sehingga akan diperoleh output seperti berikut ini.

SQL

Dapat dilihat bahwa tabel ‘Nomor Absen’ terduplikat karena dengan inner join maka penggabungan dilakukan secara default menggabungkan seluruh kolom pada tabel jika memang tidak dispesifikkan untuk kolom tertentu.


3. Perbedaan Natural Join dengan Cross Join

Berdasarkan definisi dan contoh di atas, maka dapat disimpulkan perbedaan natural join dan cross join seperti berikut.

SQL


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


4. Perbedaan Natural Join dengan Inner Join

Sedangkan perbedaan natural join dan inner join terangkum pada tabel berikut.

SQL

Ternyata bentuk Join table pada SQL sangat bermacam-macam. Tentu Sahabat DQ dapat membedakannya dengan mudah jika sering berlatih. Contoh di atas hanya penjelasan dengan data yang sederhana. Sedangkan pada praktiknya di dunia kerja, data yang akan diolah jauh lebih kompleks. Untuk itu, penting bagi Sahabat DQ mulai belajar lebih mendalam dengan materi yang lebih lengkap. Bingung mulai belajar darimana? DQLab adalah jawabannya.


Modul ajarnya lengkap dan bervariasi. Dilengkapi studi kasus yang membantu kalian belajar memecahkan masalah dari berbagai industri. Bahkan diintegrasikan dengan ChatGPT. Manfaatnya apa?

  • Membantu kalian menjelaskan lebih detail code yang sedang dipelajari

  • Membantu menemukan code yang salah atau tidak sesuai

  • Memberikan solusi atas problem yang dihadapi pada code

  • Membantu kalian belajar kapanpun dan dimanapun


Selain itu, DQLab juga menggunakan metode HERO yaitu Hands-On, Experiential Learning & Outcome-based, yang dirancang ramah untuk pemula. Tunggu apa lagi, segera Sign Up dan asah kemampuan kalian dalam menggunakan SQL atau ikuti Bootcamp Data Analyst with SQL and Python!

Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login