Relačná algebra je procedurálny dopytovací jazyk. Poskytuje krok za krokom proces na získanie výsledku dotazu. Používa operátory na vykonávanie dopytov.
Typy relačných operácií
1. Vyberte operáciu:
- Operácia select vyberie n-tice, ktoré spĺňajú daný predikát.
- Označuje sa sigma (σ).
Notation: σ p(r)
Kde:
p sa používa na predikciu výberu
r sa používa na vzťah
p sa používa ako výrokový logický vzorec, ktorý môže používať spojky ako: AND OR a NOT. Tieto relačné môžu byť použité ako relačné operátory ako =, ≠, ≧, , ≦.
Napríklad: LOAN Relation
MENO POBOČKY | LOAN_NO | AMOUNT |
---|---|---|
V centre mesta | L-17 | 1000 |
Redwood | L-23 | 2000 |
Perryride | L-15 | 1500 |
V centre mesta | L-14 | 1500 |
Mianus | L-13 | 500 |
Roundhill | L-11 | 900 |
Perryride | L-16 | 1300 |
Vstup:
σ BRANCH_NAME='perryride' (LOAN)
Výkon:
obsahuje java metódu
MENO POBOČKY | LOAN_NO | AMOUNT |
---|---|---|
Perryride | L-15 | 1500 |
Perryride | L-16 | 1300 |
2. Prevádzka projektu:
- Táto operácia zobrazí zoznam tých atribútov, ktoré chceme zobraziť vo výsledku. Ostatné atribúty sú z tabuľky odstránené.
- Označuje sa ∏.
Notation: ∏ A1, A2, An (r)
Kde
A1 , A2 , A3 sa používa ako názov atribútu vzťahu r .
Príklad: VZŤAH K ZÁKAZNÍKOM
NÁZOV | STREET | MESTO |
---|---|---|
Jones | Hlavná | Harrison |
Smith | Severná | raž |
Hays | Hlavná | Harrison |
Kari | Severná | raž |
Johnson | Duša | Brooklyn |
Brooks | senátor | Brooklyn |
Vstup:
∏ NAME, CITY (CUSTOMER)
Výkon:
NÁZOV | MESTO |
---|---|
Jones | Harrison |
Smith | raž |
Hays | Harrison |
Kari | raž |
Johnson | Brooklyn |
Brooks | Brooklyn |
3. Prevádzka únie:
- Predpokladajme, že existujú dve n-tice R a S. Operácia zjednotenia obsahuje všetky n-tice, ktoré sú v R alebo S alebo obe v R & S.
- Odstraňuje duplicitné n-tice. Označuje sa ∪.
Notation: R ∪ S
Operácia únie musí spĺňať nasledujúcu podmienku:
- R a S musia mať atribút rovnakého čísla.
- Duplicitné n-tice sú eliminované automaticky.
Príklad:
VZŤAH VKLADAŤA
MENO ZÁKAZNÍKA | ČÍSLO ÚČTU |
---|---|
Johnson | A-101 |
Smith | A-121 |
Mayes | A-321 |
Turner | A-176 |
Johnson | A-273 |
Jones | A-472 |
Lindsay | A-284 |
VZŤAH PÔŽIČKY
java nahradiť všetok reťazec
MENO ZÁKAZNÍKA | LOAN_NO |
---|---|
Jones | L-17 |
Smith | L-23 |
Hayes | L-15 |
Jackson | L-14 |
Kari | L-93 |
Smith | L-11 |
Williams | L-17 |
Vstup:
abeceda a čísla
∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR)
Výkon:
MENO ZÁKAZNÍKA |
---|
Johnson |
Smith |
Hayes |
Turner |
Jones |
Lindsay |
Jackson |
Kari |
Williams |
Mayes |
4. Nastavte križovatku:
- Predpokladajme, že existujú dve n-tice R a S. Operácia priesečníka množín obsahuje všetky n-tice, ktoré sú v R a S.
- Označuje sa priesečníkom ∩.
Notation: R ∩ S
Príklad: Pomocou vyššie uvedenej tabuľky VKLADAČ a tabuľky PÔŽIČKY
Vstup:
∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR)
Výkon:
MENO ZÁKAZNÍKA |
---|
Smith |
Jones |
5. Nastaviť rozdiel:
- Predpokladajme, že existujú dve n-tice R a S. Operácia priesečníka množín obsahuje všetky n-tice, ktoré sú v R, ale nie v S.
- Označuje sa priesečníkom mínus (-).
Notation: R - S
Príklad: Pomocou vyššie uvedenej tabuľky VKLADAČ a tabuľky PÔŽIČKY
Vstup:
∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR)
Výkon:
MENO ZÁKAZNÍKA |
---|
Jackson |
Hayes |
Williams |
Kari |
6. Kartézsky súčin
- Kartézsky súčin sa používa na spojenie každého riadku v jednej tabuľke s každým riadkom v druhej tabuľke. Je tiež známy ako krížový produkt.
- Označuje sa X.
Notation: E X D
Príklad:
ZAMESTNANEC
EMP_ID | EMP_NAME | EMP_DEPT |
---|---|---|
1 | Smith | A |
2 | Harry | C |
3 | John | B |
ODDELENIE
DEPT_NO | DEPT_NAME |
---|---|
A | marketing |
B | Predaj |
C | Právne |
Vstup:
EMPLOYEE X DEPARTMENT
Výkon:
EMP_ID | EMP_NAME | EMP_DEPT | DEPT_NO | DEPT_NAME |
---|---|---|---|---|
1 | Smith | A | A | marketing |
1 | Smith | A | B | Predaj |
1 | Smith | A | C | Právne |
2 | Harry | C | A | marketing |
2 | Harry | C | B | Predaj |
2 | Harry | C | C | Právne |
3 | John | B | A | marketing |
3 | John | B | B | Predaj |
3 | John | B | C | Právne |
7. Operácia premenovania:
Operácia premenovania sa používa na premenovanie výstupného vzťahu. Označuje sa tým rho (p).
mamta kulkarni herec
Príklad: Operátor premenovania môžeme použiť na premenovanie vzťahu STUDENT na STUDENT1.
ρ(STUDENT1, STUDENT)