Jenis Penggabungan DBMS: THETA, Inner, Outer, Equi

โšก Ringkasan Cerdas

Dalam DBMS, operasi JOIN adalah operasi biner yang menggabungkan baris dari dua tabel atau lebih menggunakan kunci utama dan kunci asingnya. Operasi JOIN terbagi menjadi inner join, yang hanya mengembalikan baris yang cocok, dan outer join, yang mempertahankan baris yang tidak cocok dan mengisi celah dengan nilai null.

  • ๐Ÿ”— Tujuan Inti: Operasi join menggabungkan tabel-tabel yang terkait menjadi satu set hasil berdasarkan suatu kondisi join.
  • ๐ŸŽฏ Gabung Dalam: Hanya mengembalikan baris yang memenuhi kondisi di kedua tabel; tipe penggabungan default.
  • ๐Ÿ“ Theta dan EQUI: Operasi theta join menggunakan operator perbandingan apa pun; operasi EQUI join hanya menggunakan kesamaan.
  • ๐Ÿ”„ Sambungan Alami: Mencocokkan atribut dengan nama yang sama dan menghapus kolom duplikat.
  • โฌ…๏ธ Gabung Luar Kiri: Mempertahankan setiap baris dari tabel sebelah kiri, mengisi nilai null jika tidak ada yang cocok di tabel sebelah kanan.
  • โžก๏ธ Penggabungan Luar Kanan: Mempertahankan setiap baris dari tabel kanan, mengisi nilai null jika tabel kiri tidak memiliki kecocokan.
  • ๐ŸŒ Gabung Luar Penuh: Mempertahankan semua baris dari kedua tabel tanpa memperhatikan kecocokan.

Penggabungan dalam DBMS Kiri Kanan

Apa itu Join dalam DBMS?

Bergabunglah di DBMS `join` adalah operasi biner yang memungkinkan Anda menggabungkan produk gabungan (join product) dan seleksi dalam satu pernyataan. Tujuan membuat kondisi gabungan (join condition) adalah untuk menggabungkan data dari dua tabel atau lebih. Tabel-tabel tersebut dihubungkan menggunakan kunci utama (primary key) mereka. kunci asing.

Jenis Gabung

Pada dasarnya ada dua jenis gabungan dalam DBMS:

  1. Gabungan Dalam: Theta, Natural, EQUI
  2. Outer Join: Left, Right, Full

Tabel di bawah ini memberikan pratinjau semua jenis join sebelum masing-masing dijelaskan dengan contoh.

Ikuti seminar Pengembalian Baris yang tidak cocok
Dalam (Theta / EQUI / Alami) Baris yang sesuai dengan kondisi di kedua tabel Turun
Luar Kiri Semua baris kiri ditambah pertandingan Disimpan dari kiri, kosong di kanan
Kanan Luar Semua baris dan pertandingan yang tepat Disimpan dari kanan, kosong di kiri
Bagian Luar Penuh Semua baris dari kedua tabel Dipertahankan dari keduanya, null jika hilang

Gabung Batin

Gabung Batin Digunakan untuk mengembalikan baris dari kedua tabel yang memenuhi kondisi yang diberikan. Ini adalah operasi join yang paling banyak digunakan dan dapat dianggap sebagai tipe join standar.

Inner join, atau equijoin, adalah operasi join berbasis komparator yang menggunakan perbandingan kesamaan dalam predikat join. Namun, jika Anda menggunakan operator perbandingan lain seperti ">", maka operasi tersebut tidak dapat disebut equijoin. Inner join selanjutnya dibagi menjadi tiga subtipe:

  • Theta bergabung
  • Gabungan alami
  • EQUI bergabung

Gabung Theta

Gabung Theta Memungkinkan Anda menggabungkan dua tabel berdasarkan kondisi yang diwakili oleh theta. Penggabungan theta berlaku untuk semua operator perbandingan. Simbol yang digunakan adalah . ฮธKasus umum dari operasi JOIN disebut theta join.

sintaks:

A โ‹ˆฮธ B

Operasi theta join dapat menggunakan kondisi apa pun dalam kriteria seleksi.

Perhatikan tabel berikut.

Tabel A Tabel B
kolom 1 kolom 2 kolom 1 kolom 2
1 1 1 1
1 2 1 3

Sebagai contoh:

A โ‹ˆ A.column 2 > B.column 2 (B)
A โ‹ˆ A.kolom 2 > B.kolom 2 (B)
kolom 1 kolom 2
1 2

Bergabunglah dengan EQUI

Bergabunglah dengan EQUI Hal ini dilakukan ketika theta join hanya menggunakan kondisi kesetaraan. EQUI join adalah operasi yang paling sulit untuk diimplementasikan secara efisien dalam sebuah RDBMS, dan ini adalah salah satu alasan mengapa RDBMS dapat mengalami masalah kinerja.

Sebagai contoh:

A โ‹ˆ A.column 2 = B.column 2 (B)
A โ‹ˆ A.kolom 2 = B.kolom 2 (B)
kolom 1 kolom 2
1 1

Gabung Alami (โ‹ˆ)

Bergabung Alami Tidak menggunakan operator perbandingan apa pun. Pada jenis join ini, atribut harus memiliki nama dan domain yang sama. Pada natural join, setidaknya harus ada satu atribut umum antara kedua relasi.

Algoritma ini melakukan seleksi berdasarkan kesamaan atribut yang muncul di kedua relasi dan menghilangkan atribut yang duplikat.

Contoh: Perhatikan dua tabel berikut.

C
Di Persegi
2 4
3 9
D
Di Kubus
2 8
3 18
C โ‹ˆ D
C โ‹ˆ D
Di Persegi Kubus
2 4 8
3 9 18

Gabung Luar

An Gabung Luar Tidak mengharuskan setiap record dalam dua tabel yang digabungkan memiliki record yang cocok. Dalam jenis join ini, tabel mempertahankan setiap record meskipun tidak ada record lain yang cocok. Tiga jenis outer join adalah:

  • Gabung Luar Kiri
  • Gabung Luar Kanan
  • Gabung Luar Penuh

Gabung Luar Kiri (A โŸ• B)

Gabung Luar Kiri Mengembalikan semua baris dari tabel di sebelah kiri, meskipun tidak ditemukan baris yang cocok di tabel di sebelah kanan. Jika tidak ditemukan catatan yang cocok di sebelah kanan, nilai null akan dikembalikan.

Gabung Luar Kiri

Perhatikan dua tabel berikut.

A
Di Persegi
2 4
3 9
4 16
B
Di Kubus
2 8
3 18
5 75
A Left Outer Join B
A โŸ• B
Di Persegi Kubus
2 4 8
3 9 18
4 16 -

Gabungan Luar Kanan (A โŸ– B)

Gabung Luar Kanan Mengembalikan semua kolom dari tabel di sebelah kanan, bahkan jika tidak ditemukan baris yang cocok di tabel di sebelah kiri. Jika tidak ditemukan kecocokan di sebelah kiri, nilai null akan dikembalikan. Right outer join adalah kebalikan dari left join.

Gabung Luar Kanan

A Right Outer Join B
A โŸ– B
Di Kubus Persegi
2 8 4
3 18 9
5 75 -

Full Outer Join (A โŸ— B)

Di sebuah Gabung Luar Penuh, semua tupel dari kedua relasi disertakan dalam hasil, terlepas dari kondisi pencocokannya.

Contoh:

A Full Outer Join B
A โŸ— B
Di Persegi Kubus
2 4 8
3 9 18
4 16 -
5 - 75

Pertanyaan Umum Demo Slot

Inner join hanya mengembalikan baris yang cocok di kedua tabel. Outer join juga mempertahankan baris yang tidak cocok dari satu atau kedua tabel, mengisi sisi yang hilang dengan null.

Theta join dapat menggunakan operator perbandingan apa pun, seperti lebih besar dari atau kurang dari. EQUI join adalah theta join yang dibatasi pada operator kesamaan, sehingga hanya mencocokkan nilai yang sama.

Keduanya cocok berdasarkan kesamaan, tetapi natural join secara otomatis mencocokkan kolom yang memiliki nama identik dan menghapus kolom duplikat. EQUI join menyebutkan kondisi secara eksplisit dan mempertahankan kedua kolom.

Ya. Berdasarkan skema dan pertanyaannya, AI dapat memilih tipe penggabungan (join) dan kunci, misalnya left join untuk mempertahankan pelanggan yang tidak memiliki pesanan. Konfirmasikan hasilnya, karena penggabungan yang salah akan mengubah jumlah baris.

Ya. AI dapat mendeteksi bahwa kunci gabungan tidak unik di satu sisi, menghasilkan ledakan banyak-ke-banyak, dan menyarankan untuk menambahkan kondisi atau melakukan agregasi terlebih dahulu sehingga setiap kecocokan dihitung sekali.

Ringkaslah postingan ini dengan: