DBMS'de İlişkisel Cebir: OperaÖrneklerle Anlatılanlar
İlişkisel Cebir
İLİŞKİSEL CEBİR yaygın olarak kullanılan prosedürel sorgulama dilidir. İlişki örneklerini girdi olarak toplar ve ilişkilerin oluşumlarını çıktı olarak verir. Bu eylemi gerçekleştirmek için çeşitli işlemler kullanır. SQL İlişkisel cebir sorgu işlemleri bir ilişki üzerinde yinelemeli olarak gerçekleştirilir. Bu işlemlerin çıktısı, bir veya daha fazla girdi ilişkisinden oluşabilen yeni bir ilişkidir.
Temel SQL İlişkisel Cebir Operaleri
İlişkisel Cebir çeşitli gruplara ayrılmıştır
Tekli İlişkisel Operaleri
- SEÇ (sembol: σ)
- PROJE (sembol: π)
- YENİDEN ADLANDIR (sembol: ρ)
İlişkisel Cebir OperaKüme Kuramı'ndan Örnekler
- BİRLİK (υ)
- KESİŞİM ( ),
- FARK (-)
- KARTEZYEN ÇARPIM ( x )
İkili İlişkisel Operaleri
- JOIN
- BÖLÜM
Bunları çözümlerle ayrıntılı olarak inceleyelim:
SEÇ (σ)
SELECT işlemi, belirli bir seçim koşuluna göre demetlerin bir alt kümesini seçmek için kullanılır. Sigma(σ) Sembolü onu ifade eder. Seçim koşulunu karşılayan tuple'ları seçmek için bir ifade olarak kullanılır. Select operatörü, belirli bir koşulu karşılayan tuple'ları seçer.
σp(r)
σ
yüklemdir
r
tablonun adı olan ilişki anlamına gelir
p
edat mantığıdır
Örnek 1
σ topic = "Database" (Tutorials)
Çıktı – Öğreticilerden konu = 'Veritabanı' olan tuple'ları seçer.
Örnek 2
σ topic = "Database" and author = "guru99"( Tutorials)
Çıktı – Konunun 'Veritabanı' ve 'yazar'ın guru99 olduğu Öğreticiler'den tuple'ları seçer.
Örnek 3
σ sales > 50000 (Customers)
Çıktı – Satışların 50000’den büyük olduğu Müşterilerden tuple’ları seçer
Projeksiyon(π)
Projeksiyon, girdi ilişkisinin projeksiyon listesinde belirtilenler dışındaki tüm niteliklerini ortadan kaldırır. Projeksiyon yöntemi, İlişkinin dikey bir alt kümesini içeren bir ilişkiyi tanımlar.
Bu, yinelenen değerleri ortadan kaldırmak için belirtilen özniteliklerin değerlerinin çıkarılmasına yardımcı olur. (pi) sembolü bir ilişkiden nitelikleri seçmek için kullanılır. Bu operatör, bir ilişkideki belirli sütunları korumanıza ve diğer sütunları atmanıza yardımcı olur.
Projeksiyon Örneği:
Aşağıdaki tabloyu göz önünde bulundurun
Müşteri Kimliği | Müşteri adı | Durum |
---|---|---|
1 | Aktif | |
2 | Amazon | Aktif |
3 | Apple | pasif |
4 | Alibaba | Aktif |
Burada MüşteriAdı ve durumunun projeksiyonu verilecektir.
Π CustomerName, Status (Customers)
Müşteri adı | Durum |
---|---|
Aktif | |
Amazon | Aktif |
Apple | pasif |
Alibaba | Aktif |
Yeniden adlandır (ρ)
Yeniden adlandırma, bir ilişkinin niteliklerini yeniden adlandırmak için kullanılan tekli bir işlemdir.
ρ (a/b)R, ilişkinin 'b' niteliğini 'a' ile yeniden adlandıracaktır.
Birleştirme işlemi (υ)
BİRLİK ∪ sembolü ile sembolize edilir. A veya B tablolarındaki tüm demetleri içerir. Ayrıca yinelenen demetleri de ortadan kaldırır. Yani A kümesi BİRLİĞİ B kümesi şu şekilde ifade edilir:
Sonuç <- A ∪ B
Bir birleşme işleminin geçerli olması için aşağıdaki koşulların sağlanması gerekir:
- R ve S aynı sayıda özniteliğe sahip olmalıdır.
- Özellik alan adlarının uyumlu olması gerekir.
- Yinelenen kayıtlar otomatik olarak kaldırılmalıdır.
Örnek E-posta
Aşağıdaki tabloları inceleyin.
sütun 1 | sütun 2 | sütun 1 | sütun 2 | |
---|---|---|---|---|
1 | 1 | 1 | 1 | |
1 | 2 | 1 | 3 |
A ∪ B şunu verir
sütun 1 | sütun 2 |
---|---|
1 | 1 |
1 | 2 |
1 | 3 |
Farkı Ayarla (-)
– Sembol onu belirtir. A – B'nin sonucu, A'da olan ancak B'de olmayan tüm demetleri içeren bir ilişkidir.
- A'nın öznitelik adı B'deki öznitelik adıyla eşleşmelidir.
- İki işlenenli ilişkiler A ve B ya uyumlu ya da Birlik uyumlu olmalıdır.
- A ilişkisinde olan ancak B ilişkisinde olmayan demetlerden oluşan ilişki tanımlanmalıdır.
Örnek E-posta
A-B
sütun 1 | sütun 2 |
---|---|
1 | 2 |
Kesişim
Bir kesişim ∩ sembolüyle tanımlanır
bir ∩ B
Hem A hem de B'de bulunan tüm demetlerden oluşan bir kümeden oluşan bir ilişkiyi tanımlar. Ancak A ve B'nin birleşim uyumlu olması gerekir.
Örnek:
A ∩ B
sütun 1 | sütun 2 |
---|---|
1 | 1 |
DBMS'de Kartezyen Çarpım(X)
DBMS'de Kartezyen Çarpım iki ilişkideki sütunları birleştirmek için kullanılan bir işlemdir. Genel olarak kartezyen bir ürün, tek başına gerçekleştirildiğinde hiçbir zaman anlamlı bir işlem değildir. Ancak arkasından başka işlemler geldiğinde anlam kazanır. Aynı zamanda Çapraz Ürün veya Çapraz Katılım olarak da adlandırılır.
Örnek – Kartezyen çarpım
σ sütun 2 = '1' (AXB)
Çıktı – Yukarıdaki örnek, sütun 2'si 1 değerine sahip olan A ve B ilişkisindeki tüm satırları gösterir.
sütun 1 | sütun 2 |
---|---|
1 | 1 |
1 | 1 |
Kaydol Operaleri
Birleştirme işlemi aslında kartezyen bir üründür ve ardından bir seçim kriteri gelir.
⋈ ile gösterilen birleştirme işlemi.
JOIN işlemi aynı zamanda farklı ilişkilerden çeşitli ilişkili demetlerin birleştirilmesine de olanak tanır.
KATILMA Türleri:
Birleştirme işleminin çeşitli biçimleri şunlardır:
İç Birleşimler:
- Teta katılımı
- EQUI'ye katılma
- Doğal birleştirme
Dış birleştirme:
- Sol dış katılma
- Sağ Dış Birleştirme
- Tam Dış Birleştirme
İç birleşim
Bir iç birleştirmede yalnızca eşleştirme kriterlerini karşılayan tanımlamalar dahil edilir, geri kalanlar hariç tutulur. Çeşitli İç Birleşim türlerini inceleyelim:
Tetaya Katılma
JOIN işleminin genel durumuna Theta birleşimi denir. Sembolle gösterilir θ
Örnek E-posta
A ⋈θ B
Theta join, seçim kriterlerindeki herhangi bir koşulu kullanabilir.
Örneğin:
A ⋈ A.column 2 > B.column 2 (B)
sütun 1 | sütun 2 |
---|---|
1 | 2 |
EQUI'ye katılma
Theta birleşimi yalnızca eşdeğerlik koşulunu kullandığında, eşitlik birleşimi haline gelir.
Örneğin:
A ⋈ A.column 2 = B.column 2 (B)
sütun 1 | sütun 2 |
---|---|
1 | 1 |
EQUI birleştirme, bir RDBMS'de SQL kullanarak verimli bir şekilde uygulanması en zor işlemlerdir ve bunun bir nedeni RDBMS temel performans sorunları var.
DOĞAL KATIL (⋈)
Doğal birleştirme ancak ilişkiler arasında ortak bir özelliğin (sütun) olması durumunda gerçekleştirilebilir. Özelliğin adı ve türü aynı olmalıdır.
Örnek E-posta
Aşağıdaki iki tabloyu göz önünde bulundurun
Içinde | Kare |
---|---|
2 | 4 |
3 | 9 |
Içinde | Küp |
---|---|
2 | 8 |
3 | 27 |
C ⋈ D
Içinde | Kare | Küp |
---|---|---|
2 | 4 | 8 |
3 | 9 | 27 |
DIŞ BİRLEŞTİRME
Bir dış birleştirmede, eşleştirme kriterlerini karşılayan demetlerin yanı sıra, kriterlerle eşleşmeyen demetlerin bir kısmını veya tamamını da dahil ederiz.
Sol Dış Birleştirme(A ⟕ B)
Sol dış birleştirmede işlem, tüm demetlerin sol ilişkide tutulmasına olanak tanır. Ancak, doğru ilişkide eşleşen bir demet bulunmazsa, birleştirme sonucundaki doğru ilişkinin öznitelikleri boş değerlerle doldurulur.
Aşağıdaki 2 Tabloyu düşünün
Içinde | Kare |
---|---|
2 | 4 |
3 | 9 |
4 | 16 |
Içinde | Küp |
---|---|
2 | 8 |
3 | 18 |
5 | 75 |
AB
Içinde | Kare | Küp |
---|---|---|
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
Sağ Dış Birleşim ( A ⟖ B )
Sağ dış birleştirmede işlem, tüm demetlerin doğru ilişkide tutulmasına olanak tanır. Ancak soldaki ilişkide eşleşen bir demet bulunmazsa, birleştirme sonucundaki sol ilişkinin nitelikleri boş değerlerle doldurulur.
AB
Içinde | Küp | Kare |
---|---|---|
2 | 8 | 4 |
3 | 18 | 9 |
5 | 75 | - |
Tam Dış Birleştirme ( A ⟗ B)
Tam dış birleştirmede, eşleşme koşulundan bağımsız olarak her iki ilişkideki tüm demetler sonuca dahil edilir.
AB
Içinde | Küp | Kare |
---|---|---|
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
5 | - | 75 |
ÖZET
Opera(Semboller) | Amaç |
---|---|
Seç(σ) | SELECT işlemi, belirli bir seçim koşuluna göre demetlerin bir alt kümesini seçmek için kullanılır. |
Projeksiyon(π) | Projeksiyon, girdi ilişkisinin projeksiyon listesinde belirtilenler dışındaki tüm niteliklerini ortadan kaldırır. |
sendika Operadurum(∪) | BİRLİK sembolle sembolize edilir. A veya B tablolarındaki tüm tanımlama gruplarını içerir. |
Farkı Ayarla(-) | – Sembol onu belirtir. A – B'nin sonucu, A'da olan ancak B'de olmayan tüm demetleri içeren bir ilişkidir. |
Kesişme(∩) | Kesişme, hem A hem de B'de bulunan tüm demetlerden oluşan bir kümeden oluşan bir ilişkiyi tanımlar. |
Kartezyen Çarpım(X) | Kartezyen işlemi, iki ilişkideki sütunları birleştirmede faydalıdır. |
İç birleşim | İç birleştirme, yalnızca eşleştirme kriterlerini karşılayan demetleri içerir. |
Teta Katılımı(θ) | JOIN işleminin genel durumuna Theta birleşimi denir. θ sembolü ile gösterilir. |
EQUI'ye Katılın | Theta birleşimi yalnızca eşdeğerlik koşulunu kullandığında, eşitlik birleşimi haline gelir. |
Doğal Birleştirme(⋈) | Doğal birleştirme ancak ilişkiler arasında ortak bir özelliğin (sütun) olması durumunda gerçekleştirilebilir. |
Dış Birleştirme | Eşleştirme kriterlerini karşılayan demetlerle birlikte bir dış birleştirmede. |
Sol dış katılma( |
Sol dış birleştirmede işlem, tüm demetlerin sol ilişkide tutulmasına olanak tanır. |
Sağ Dış birleştirme( |
Sağ dış birleştirmede işlem, tüm demetlerin doğru ilişkide tutulmasına olanak tanır. |
Tam Dış Birleştirme( |
Tam dış birleştirmede, eşleşme durumuna bakılmaksızın her iki ilişkideki tüm tanımlamalar sonuca dahil edilir. |