DBMS - Bergabung

Kami memahami manfaat mengambil produk Cartesian dari dua relasi, yang memberi kita semua kemungkinan tupel yang dipasangkan bersama. Tetapi mungkin tidak layak bagi kami dalam kasus tertentu untuk mengambil produk Cartesian di mana kami menemukan hubungan besar dengan ribuan tupel yang memiliki sejumlah besar atribut.

Joinadalah kombinasi dari produk Cartesian yang diikuti dengan proses seleksi. Operasi gabungan memasangkan dua tupel dari relasi berbeda, jika dan hanya jika kondisi gabungan tertentu terpenuhi.

Kami akan menjelaskan secara singkat berbagai jenis gabungan di bagian berikut.

Theta (θ) Gabung

Gabung theta menggabungkan tupel dari relasi yang berbeda asalkan memenuhi kondisi theta. Kondisi gabungan dilambangkan dengan simbolθ.

Notasi

R1 ⋈θ R2

R1 dan R2 adalah relasi yang memiliki atribut (A1, A2, .., An) dan (B1, B2, .., Bn) sehingga atribut tersebut tidak memiliki kesamaan, yaitu R1 ∩ R2 = Φ.

Gabungan Theta dapat menggunakan semua jenis operator perbandingan.

Siswa
SID Nama Std
101 Alex 10
102 Maria 11
Subjek
Kelas Subyek
10 Matematika
10 Inggris
11 Musik
11 Olahraga

Student_Detail -

STUDENT Student.Std = Subject.Class SUBJECT

Student_detail
SID Nama Std Kelas Subyek
101 Alex 10 10 Matematika
101 Alex 10 10 Inggris
102 Maria 11 11 Musik
102 Maria 11 11 Olahraga

Equijoin

Saat Theta bergabung hanya menggunakan equalityoperator perbandingan, dikatakan equijoin. Contoh di atas sesuai dengan equijoin.

Bergabung Alami ( )

Gabungan alami tidak menggunakan operator perbandingan apa pun. Ini tidak menggabungkan seperti yang dilakukan produk Cartesian. Kita dapat melakukan Natural Join hanya jika ada setidaknya satu atribut umum yang ada di antara dua relasi. Selain itu, atribut harus memiliki nama dan domain yang sama.

Gabungan alami bekerja pada atribut yang cocok di mana nilai atribut di kedua relasinya sama.

Kursus
CID Kursus Dept
CS01 Database CS
ME01 Mekanika SAYA
EE01 Elektronik EE
HoD
Dept Kepala
CS Alex
SAYA Maya
EE Mira
Kursus ⋈ HoD
Dept CID Kursus Kepala
CS CS01 Database Alex
SAYA ME01 Mekanika Maya
EE EE01 Elektronik Mira

Gabungan Luar

Gabungan Theta, Equijoin, dan Gabungan Alami disebut gabungan dalam. Gabungan dalam hanya menyertakan tupel dengan atribut yang cocok dan sisanya dibuang dalam relasi yang dihasilkan. Oleh karena itu, kita perlu menggunakan gabungan luar untuk memasukkan semua tupel dari relasi yang berpartisipasi dalam relasi yang dihasilkan. Ada tiga jenis gabungan luar - gabungan luar kiri, gabungan luar kanan, dan gabungan luar penuh.

Gabungan Luar Kiri (R
S)

Semua tupel dari relasi Left, R, termasuk dalam relasi yang dihasilkan. Jika ada tupel di R tanpa tupel yang cocok di relasi Right S, maka atribut S dari relasi yang dihasilkan dibuat NULL.

Kiri
SEBUAH B
100 Database
101 Mekanika
102 Elektronik
Baik
SEBUAH B
100 Alex
102 Maya
104 Mira
Kursus
HoD
SEBUAH B C D
100 Database 100 Alex
101 Mekanika --- ---
102 Elektronik 102 Maya

Gabungan Luar Kanan: (R
S)

Semua tupel dari relasi Right, S, termasuk dalam relasi yang dihasilkan. Jika ada tupel di S tanpa tupel yang cocok di R, maka atribut R dari relasi yang dihasilkan dibuat NULL.

Kursus
HoD
SEBUAH B C D
100 Database 100 Alex
102 Elektronik 102 Maya
--- --- 104 Mira

Gabungan Luar Penuh: (R
S)

Semua tupel dari kedua relasi yang berpartisipasi termasuk dalam relasi yang dihasilkan. Jika tidak ada tupel yang cocok untuk kedua relasi, atribut masing-masing yang tidak cocok dibuat NULL.

Kursus
HoD
SEBUAH B C D
100 Database 100 Alex
101 Mekanika --- ---
102 Elektronik 102 Maya
--- --- 104 Mira