İlişkisel cebir prosedürel bir sorgulama dilidir. Sorgu sonucunu elde etmek için adım adım bir süreç sunar. Sorguları gerçekleştirmek için operatörleri kullanır.
İlişkisel işlem türleri
1. İşlemi Seçin:
- Seçme işlemi, belirli bir koşulu karşılayan değişkenleri seçer.
- Sigma (σ) ile gösterilir.
Notation: σ p(r)
Nerede:
P seçim tahmini için kullanılır
R ilişki için kullanılır
P VE VEYA ve DEĞİL gibi bağlayıcıları kullanabilen bir önerme mantığı formülü olarak kullanılır. Bu ilişkisel operatörler =, ≠, ≧, , ≦ gibi ilişkisel operatörler olarak kullanılabilir.
Örneğin: KREDİ İlişkisi
| ŞUBE_NAME | KREDİ_HAYIR | MİKTAR |
|---|---|---|
| Şehir merkezi | L-17 | 1000 |
| Sekoya | L-23 | 2000 |
| Perryride | L-15 | 1500 |
| Şehir merkezi | L-14 | 1500 |
| Mianus | L-13 | 500 |
| Yuvarlak yokuş | L-11 | 900 |
| Perryride | L-16 | 1300 |
Giriş:
σ BRANCH_NAME='perryride' (LOAN)
Çıktı:
Java karakter dizisini dizeye aktardı
| ŞUBE_NAME | KREDİ_HAYIR | MİKTAR |
|---|---|---|
| Perryride | L-15 | 1500 |
| Perryride | L-16 | 1300 |
2. Proje Operasyonu:
- Bu işlem sonuçta görünmesini istediğimiz özelliklerin listesini gösterir. Niteliklerin geri kalanı tablodan çıkarılır.
- ∏ ile gösterilir.
Notation: ∏ A1, A2, An (r)
Nerede
A1 , A2 , A3 ilişkinin nitelik adı olarak kullanılır R .
Örnek: MÜŞTERİ İLİŞKİLERİ
| İSİM | SOKAK | ŞEHİR |
|---|---|---|
| Jones | Ana | Harrison |
| Smith | Kuzey | Çavdar |
| Hay'lar | Ana | Harrison |
| köri | Kuzey | Çavdar |
| Johnson | Ruh | Brooklyn |
| Brooks | Senatör | Brooklyn |
Giriş:
∏ NAME, CITY (CUSTOMER)
Çıktı:
| İSİM | ŞEHİR |
|---|---|
| Jones | Harrison |
| Smith | Çavdar |
| Hay'lar | Harrison |
| köri | Çavdar |
| Johnson | Brooklyn |
| Brooks | Brooklyn |
3. Birlik Operasyonu:
- Diyelim ki iki R ve S demetleri var. Birleştirme işlemi, R veya S'de ya da her ikisinde de R & S'de bulunan tüm demetleri içerir.
- Yinelenen tuple'ları ortadan kaldırır. ∪ ile gösterilir.
Notation: R ∪ S
Bir birleşim işlemi aşağıdaki koşulu sağlamalıdır:
- R ve S aynı sayının niteliğine sahip olmalıdır.
- Yinelenen kayıtlar otomatik olarak ortadan kaldırılır.
Örnek:
Mevduatçı İlişkisi
java programı
| MÜŞTERİ ADI | HESAP_NO |
|---|---|
| Johnson | A-101 |
| Smith | A-121 |
| Mayıslar | A-321 |
| Turner | A-176 |
| Johnson | A-273 |
| Jones | A-472 |
| Lindsey | A-284 |
BORÇ İLİŞKİSİ
| MÜŞTERİ ADI | KREDİ_HAYIR |
|---|---|
| Jones | L-17 |
| Smith | L-23 |
| Hayes | L-15 |
| Jackson | L-14 |
| köri | L-93 |
| Smith | L-11 |
| Williams | L-17 |
Giriş:
∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR)
Çıktı:
| MÜŞTERİ ADI |
|---|
| Johnson |
| Smith |
| Hayes |
| Turner |
| Jones |
| Lindsey |
| Jackson |
| köri |
| Williams |
| Mayıslar |
4. Kesişimi Ayarlayın:
- Diyelim ki iki R ve S demetleri var. Ayarlanmış kesişim işlemi, her iki R & S'de bulunan tüm demetleri içerir.
- Kesişim ∩ ile gösterilir.
Notation: R ∩ S
Örnek: Yukarıdaki DEPOSITOR tablosunu ve BORROW tablosunu kullanma
Giriş:
∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR)
Çıktı:
Java bunu yapmaz
| MÜŞTERİ ADI |
|---|
| Smith |
| Jones |
5. Farkı Ayarlayın:
- Diyelim ki R ve S olmak üzere iki demet var. Küme kesişme işlemi, R'de olan ancak S'de olmayan tüm demetleri içerir.
- Kesişim eksi (-) ile gösterilir.
Notation: R - S
Örnek: Yukarıdaki DEPOSITOR tablosunu ve BORROW tablosunu kullanma
Giriş:
∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR)
Çıktı:
| MÜŞTERİ ADI |
|---|
| Jackson |
| Hayes |
| Williams |
| köri |
6. Kartezyen çarpım
- Kartezyen çarpım, bir tablodaki her satırı diğer tablodaki her satırla birleştirmek için kullanılır. Aynı zamanda çapraz çarpım olarak da bilinir.
- X ile gösterilir.
Notation: E X D
Örnek:
ÇALIŞAN
| EMP_ID | EMP_NAME | EMP_DEPT |
|---|---|---|
| 1 | Smith | A |
| 2 | Harry | C |
| 3 | John | B |
DEPARTMAN
| DEPT_NO | DEPT_NAME |
|---|---|
| A | Pazarlama |
| B | Satış |
| C | Yasal |
Giriş:
EMPLOYEE X DEPARTMENT
Çıktı:
npm önbelleğini temizle
| EMP_ID | EMP_NAME | EMP_DEPT | DEPT_NO | DEPT_NAME |
|---|---|---|---|---|
| 1 | Smith | A | A | Pazarlama |
| 1 | Smith | A | B | Satış |
| 1 | Smith | A | C | Yasal |
| 2 | Harry | C | A | Pazarlama |
| 2 | Harry | C | B | Satış |
| 2 | Harry | C | C | Yasal |
| 3 | John | B | A | Pazarlama |
| 3 | John | B | B | Satış |
| 3 | John | B | C | Yasal |
7. İşlemi Yeniden Adlandırın:
Yeniden adlandırma işlemi çıktı ilişkisini yeniden adlandırmak için kullanılır. Şununla gösterilir: ro (P).
Örnek: STUDENT ilişkisini STUDENT1 ile yeniden adlandırmak için rename operatörünü kullanabiliriz.
ρ(STUDENT1, STUDENT)