DBMS'de Join nedir?
Join in DBMS , birleştirme ürününü ve seçimi tek bir ifadede birleştirmenizi sağlayan ikili bir işlemdir. Bir birleştirme koşulu oluşturmanın amacı, verileri iki veya daha fazla DBMS tablosundan birleştirmenize yardımcı olmasıdır. DBMS'deki tablolar, birincil anahtar ve yabancı anahtarlar kullanılarak ilişkilendirilir.
Bu DBMS eğitiminde şunları öğreneceksiniz:
- Birleştirme Türleri
- İç birleşim
- Theta Join
- EQUI birleştirme:
- Doğal Birleştirme (⋈)
- Dış Birleştirme
- Sol Dış Birleşim (A B)
- Sağ Dış Birleşim (A B)
- Tam Dış Birleşim (A B)
Birleştirme Türleri
DBMS'de başlıca iki tür birleştirme vardır:
- İç Birleşimler: Theta, Natural, EQUI
- Dış Birleştirme: Sol, Sağ, Tam
Onları detaylı olarak görelim:
İç birleşim
INNER JOIN , her iki tablodan verilen koşulu sağlayan satırları döndürmek için kullanılır. En yaygın kullanılan birleştirme işlemidir ve varsayılan bir birleştirme türü olarak düşünülebilir
Bir İç birleştirme veya eşitlik, birleştirme yükleminde eşitlik karşılaştırmalarını kullanan karşılaştırıcı tabanlı bir birleştirmedir. Ancak, ">" gibi diğer karşılaştırma operatörlerini kullanırsanız, buna equijoin denemez.
Inner Join ayrıca üç alt türe ayrılmıştır:
- Teta birleştirme
- Doğal birleşim
- EQUI birleştirme
Theta Join
THETA JOIN , theta ile temsil edilen koşula göre iki tabloyu birleştirmenize olanak tanır. Theta joins, tüm karşılaştırma operatörleri için çalışır. Θ sembolü ile gösterilir . JOIN işleminin genel durumuna Theta birleştirme adı verilir.
Sözdizimi:
A ⋈θ B
Theta birleştirme, seçim kriterlerindeki herhangi bir koşulu kullanabilir.
Aşağıdaki tabloları düşünün.
Tablo A | Tablo B | |||
sütun 1 | sütun 2 | sütun 1 | sütun 2 | |
1 | 1 | 1 | 1 | |
1 | 2 | 1 | 3 |
Örneğin:
A ⋈ A.column 2 > B.column 2 (B)
A ⋈ A. sütun 2> B. sütun 2 (B) | |
sütun 1 | sütun 2 |
1 | 2 |
EQUI Birleştirme
EQUI JOIN , bir Theta birleştirmesi yalnızca eşdeğerlik koşulunu kullandığında yapılır. EQUI birleştirme, bir RDBMS'de verimli bir şekilde uygulanması en zor işlemdir ve RDBMS'nin temel performans sorunlarına sahip olmasının bir nedeni.
Örneğin:
A ⋈ A.column 2 = B.column 2 (B)
A ⋈ A. sütun 2 = B. sütun 2 (B) | |
sütun 1 | sütun 2 |
1 | 1 |
Doğal Birleştirme (⋈)
NATURAL JOIN , karşılaştırma operatörlerinden hiçbirini kullanmaz. Bu tür bir birleştirmede, öznitelikler aynı ada ve alana sahip olmalıdır. Natural Join'de, iki ilişki arasında en az bir ortak özellik olmalıdır.
Her iki ilişkide görünen öznitelikler üzerinde seçim oluşturan eşitliği gerçekleştirir ve yinelenen öznitelikleri ortadan kaldırır.
Misal:
Aşağıdaki iki tabloyu düşünün
C | |
Num | Meydan |
2 | 4 |
3 | 9 |
D | |
Num | Küp |
2 | 8 |
3 | 18 |
C ⋈ D
C ⋈ D | ||
Num | Meydan | Küp |
2 | 4 | 8 |
3 | 9 | 18 |
Dış Birleştirme
Bir DIŞ JOIN iki eşleşen bir sicile sahip olmak tabloları birleştirmek her kaydı gerektirmez. Bu tür birleştirmede, tablo, eşleşen başka bir kayıt olmasa bile her kaydı tutar.
Üç tür Dış Birleşim vardır:
- Sol dış katılma
- Sağ Dış Birleştirme
- Tam Dış Birleştirme
Sol Dış Birleşim (A B)
LEFT JOIN , sağdaki tabloda eşleşen satır bulunmasa bile soldaki tablodan tüm satırları döndürür. Sağdaki tabloda eşleşen kayıt bulunamadığında NULL döndürülür.
Aşağıdaki 2 Tabloyu düşünün
Bir | |
Num | Meydan |
2 | 4 |
3 | 9 |
4 | 16 |
B | |
Num | Küp |
2 | 8 |
3 | 18 |
5 | 75 |
A B
A ⋈ B | ||
Num | Meydan | Küp |
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
Sağ Dış Birleşim (A B)
RIGHT JOIN , soldaki tabloda eşleşen satır bulunmasa bile sağdaki tablodan tüm sütunları döndürür. Soldaki tabloda herhangi bir eşleşme bulunamadığında, NULL döndürülür. RIGHT dış JOIN, LEFT JOIN'in tersidir
Örneğimizde, onlar tarafından kiralanan üyelerin ve filmlerin adlarını almanız gerektiğini varsayalım. Şimdi henüz film kiralamamış yeni bir üyemiz var.
A B
A ⋈ B | ||
Num | Küp | Meydan |
2 | 8 | 4 |
3 | 18 | 9 |
5 | 75 | - |
Tam Dış Birleşim (A B)
Bir TAM DIŞ BİRLEŞTİRME'de , her iki ilişkiden gelen tüm tuplelar, eşleşen koşuldan bağımsız olarak sonuca dahil edilir.
Misal:
A B
A ⋈ B | ||
Num | Meydan | Küp |
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
5 | - | 75 |
Özet:
- DBMS'de başlıca iki tür birleştirme vardır 1) İç Birleştirme 2) Dış Birleştirme
- İç birleştirme, yaygın olarak kullanılan birleştirme işlemidir ve varsayılan bir birleştirme türü olarak düşünülebilir.
- İç Birleştirme ayrıca üç alt türe ayrılır: 1) Teta birleştirme 2) Doğal birleştirme 3) EQUI birleştirme
- Theta Join, theta ile temsil edilen koşula göre iki tabloyu birleştirmenize olanak tanır
- Bir teta birleşimi yalnızca eşdeğerlik koşulunu kullandığında, bir eşit birleşim haline gelir.
- Doğal birleştirme, karşılaştırma operatörlerinden hiçbirini kullanmaz.
- Dış birleştirme, iki birleştirme tablosundaki her kaydın eşleşen bir kayda sahip olmasını gerektirmez.
- Dış Birleştirme ayrıca üç alt türe ayrılır: 1) Sol Dış Birleşim 2) Sağ Dış Birleşim 3) Tam Dış Birleşim
- SOL Dış Birleştirme, sağdaki tabloda eşleşen satır bulunmasa bile soldaki tablodan tüm satırları döndürür.
- SAĞ Dış Birleştirme, soldaki tabloda eşleşen satır bulunmasa bile, sağdaki tablodan tüm sütunları döndürür.
- Tam bir dış birleşimde, her iki ilişkiden gelen tüm tuplelar, eşleşme koşulundan bağımsız olarak sonuca dahil edilir.