Reliacinė algebra yra procedūrinė užklausų kalba. Jame pateikiamas žingsnis po žingsnio procesas, skirtas gauti užklausos rezultatą. Užklausoms atlikti naudojami operatoriai.
Reliacinių operacijų tipai
1. Pasirinkite Operacija:
- Atrankos operacija parenka eilutes, kurios atitinka nurodytą predikatą.
- Jis žymimas sigma (σ).
Notation: σ p(r)
Kur:
p naudojamas atrankos prognozavimui
r naudojamas santykiams
p naudojama kaip teiginio logikos formulė, kuri gali naudoti tokias jungtis kaip: AND OR ir NOT. Šie reliaciniai operatoriai gali būti naudojami kaip reliaciniai operatoriai, pvz., =, ≠, ≧, , ≦.
Pavyzdžiui: PASKOLOS santykis
BRANCH_NAME | PASKOLOS_NE | SUMA |
---|---|---|
Miesto centras | L-17 | 1000 |
Raudonmedis | L-23 | 2000 m |
Perryridas | L-15 | 1500 |
Miesto centras | L-14 | 1500 |
Mianus | L-13 | 500 |
Roundhill | L-11 | 900 |
Perryridas | L-16 | 1300 |
Įvestis:
σ BRANCH_NAME='perryride' (LOAN)
Išvestis:
sql skaičius skiriasi
BRANCH_NAME | PASKOLOS_NE | SUMA |
---|---|---|
Perryridas | L-15 | 1500 |
Perryridas | L-16 | 1300 |
2. Projekto veikimas:
- Ši operacija rodo tų atributų, kuriuos norime matyti rezultate, sąrašą. Likę atributai pašalinami iš lentelės.
- Jis žymimas ∏.
Notation: ∏ A1, A2, An (r)
Kur
A1 , A2 , A3 naudojamas kaip santykio atributo pavadinimas r .
Pavyzdys: RYŠIAI SU KLIENTAMIS
VARDAS | GATVĖ | MIESTAS |
---|---|---|
Jonesas | Pagrindinis | Harisonas |
Kalvis | Šiaurė | Rugiai |
Šienas | Pagrindinis | Harisonas |
Karis | Šiaurė | Rugiai |
Johnsonas | Siela | Bruklinas |
Brooksas | Senatorius | Bruklinas |
Įvestis:
java interviu klausimai
∏ NAME, CITY (CUSTOMER)
Išvestis:
VARDAS | MIESTAS |
---|---|
Jonesas | Harisonas |
Kalvis | Rugiai |
Šienas | Harisonas |
Karis | Rugiai |
Johnsonas | Bruklinas |
Brooksas | Bruklinas |
3. Sąjungos operacija:
- Tarkime, kad yra dvi eilės R ir S. Sujungimo operacijoje yra visos eilės, esančios R arba S arba abiejose R&S.
- Tai pašalina pasikartojančias eilutes. Jis žymimas ∪.
Notation: R ∪ S
Profesinės sąjungos operacija turi atitikti šias sąlygas:
- R ir S turi turėti to paties skaičiaus atributą.
- Pasikartojančios eilutės pašalinamos automatiškai.
Pavyzdys:
SANTYKIAI IŠDĖLĖJO
KLIENTO VARDAS | SĄSKAITOS NUMERIS |
---|---|
Johnsonas | A-101 |
Kalvis | A-121 |
Mayes | A-321 |
Turneris | A-176 |
Johnsonas | A-273 |
Jonesas | A-472 |
Lindsė | A-284 |
SKOLINIMOSI SANTYKIAI
KLIENTO VARDAS | PASKOLOS_NE |
---|---|
Jonesas | L-17 |
Kalvis | L-23 |
Hayes | L-15 |
Džeksonas | L-14 |
Karis | L-93 |
Kalvis | L-11 |
Williamsas | L-17 |
Įvestis:
∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR)
Išvestis:
KLIENTO VARDAS |
---|
Johnsonas |
Kalvis |
Hayes |
Turneris |
Jonesas |
Lindsė |
Džeksonas |
Karis |
Williamsas |
Mayes |
4. Nustatyti sankryžą:
- Tarkime, kad yra dvi eilės R ir S. Nustatyti sankirtos operaciją sudaro visos eilės, esančios ir R ir S.
- Jis žymimas sankirta ∩.
Notation: R ∩ S
Pavyzdys: Naudojant aukščiau pateiktą DEPOSITORIAUS ir SKOLINIMO lentelę
Įvestis:
∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR)
Išvestis:
KLIENTO VARDAS |
---|
Kalvis |
Jonesas |
5. Nustatykite skirtumą:
- Tarkime, kad yra dvi eilės R ir S. Aibės sankirtos operacijoje yra visos eilės, esančios R, bet ne S.
- Jis žymimas sankirtos minusu (-).
Notation: R - S
Pavyzdys: Naudojant aukščiau pateiktą DEPOSITORIAUS ir SKOLINIMO lentelę
Įvestis:
java sūpynės
∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR)
Išvestis:
KLIENTO VARDAS |
---|
Džeksonas |
Hayes |
Williamsas |
Karis |
6. Dekarto gaminys
- Dekarto sandauga naudojamas sujungti kiekvieną vienos lentelės eilutę su kiekviena kitos lentelės eilute. Jis taip pat žinomas kaip kryžminis produktas.
- Jis žymimas X.
Notation: E X D
Pavyzdys:
DARBUOTOJAS
latekso dalinis darinys
EMP_ID | EMP_NAME | EMP_DEPT |
---|---|---|
1 | Kalvis | A |
2 | Hari | C |
3 | Jonas | B |
SKYRIUS
DEPT_NO | DEPT_NAME |
---|---|
A | Rinkodara |
B | Pardavimai |
C | Teisinė |
Įvestis:
EMPLOYEE X DEPARTMENT
Išvestis:
EMP_ID | EMP_NAME | EMP_DEPT | DEPT_NO | DEPT_NAME |
---|---|---|---|---|
1 | Kalvis | A | A | Rinkodara |
1 | Kalvis | A | B | Pardavimai |
1 | Kalvis | A | C | Teisinė |
2 | Hari | C | A | Rinkodara |
2 | Hari | C | B | Pardavimai |
2 | Hari | C | C | Teisinė |
3 | Jonas | B | A | Rinkodara |
3 | Jonas | B | B | Pardavimai |
3 | Jonas | B | C | Teisinė |
7. Pervadinimo operacija:
Pervadinimo operacija naudojama išvesties ryšiui pervardyti. Jis žymimas rho (p).
Pavyzdys: Galime naudoti pervardymo operatorių, kad pervadintume STUDENT ryšį į STUDENT1.
ρ(STUDENT1, STUDENT)