logo

Zavedenie relačnej algebry v DBMS

Predbežná požiadavka: Relačný model v DBMS

Relačná algebra je procedurálny dotazovací jazyk. Relačná algebra poskytuje hlavne teoretický základ pre relačné databázy a SQL . Hlavným účelom použitia relačnej algebry je definovať operátory, ktoré transformujú jeden alebo viac vstupných vzťahov na výstupný vzťah. Vzhľadom na to, že tieto operátory akceptujú vzťahy ako vstup a vytvárajú vzťahy ako výstup, možno ich kombinovať a použiť na vyjadrenie potenciálne zložitých dotazov, ktoré transformujú potenciálne veľa vstupných vzťahov (ktorých údaje sú uložené v databáze) na jeden výstupný vzťah (výsledok dotazu). . Keďže ide o čistú matematiku, v relačnej algebre sa nepoužívajú anglické kľúčové slová a operátory sú reprezentované pomocou symbolov.



Základní operátori

Toto sú základné/základné operátory používané v relačnej algebre.

  1. Výber (σ)
  2. Projekcia (π)
  3. Union(U)
  4. Nastaviť rozdiel (-)
  5. Nastaviť križovatku (∩)
  6. Premenovať (ρ)
  7. Kartézsky súčin (X)

1. Výber (σ): Používa sa na výber požadovaných n-tic relácií.

Príklad:



A B C
1 2 4
2 2 3
3 2 3
4 3 4

Pre vyššie uvedený vzťah, a(c>3)R vyberie n-tice, ktoré majú c viac ako 3.

A B C
1 2 4
4 3 4

Poznámka: Operátor výberu iba vyberie požadované n-tice, ale nezobrazí ich. Na zobrazenie sa používa operátor dátovej projekcie.

2. Projekcia (π): Používa sa na projektovanie požadovaných údajov stĺpca zo vzťahu.



preity zinta

Príklad: Zoberme si tabuľku 1. Predpokladajme, že chceme stĺpce B a C zo vzťahu R.

π(B,C)R will show following columns.>
B C
2 4
2 3
3 4

Poznámka: V predvolenom nastavení projekcia odstraňuje duplicitné údaje.

3. Union(U): Operácia zjednotenia v relačnej algebre je rovnaká ako operácia zjednotenia v teórii množín.

Príklad:

FRANCÚZSKY

Meno študenta Roll_Number
Ram 01
Mohan 02
Vivek 13
Geeta 17

NEMČINA

Meno študenta Roll_Number
Vivek 13
Geeta 17
Shyam dvadsaťjeden
Rohan 25

Zvážte nasledujúcu tabuľku študentov, ktorí majú vo svojom kurze rôzne voliteľné predmety.

π(Student_Name)FRENCH U π(Student_Name)GERMAN>
Meno študenta
Ram
Mohan
Vivek
Geeta
Shyam
Rohan

Poznámka: Jediným obmedzením spojenia dvoch vzťahov je, že oba vzťahy musia mať rovnakú množinu atribútov.

4. Nastaviť rozdiel (-): Množinový rozdiel v relačnej algebre je rovnaká operácia rozdielu množín ako v teórii množín.

Príklad: Z vyššie uvedenej tabuľky FRANCÚZSKY a NEMČINY, Set Difference sa používa nasledovne

π(Student_Name)FRENCH - π(Student_Name)GERMAN>
Meno študenta
Ram
Mohan

Poznámka: Jediným obmedzením v množine rozdielu medzi dvoma vzťahmi je, že oba vzťahy musia mať rovnakú množinu atribútov.

5. Nastavte priesečník (∩): Priesečník množín v relačnej algebre je rovnaký priesečník množín v teórii množín.

Príklad: Z vyššie uvedenej tabuľky FRANCÚZSKY a NEMČINY sa križovatka množiny používa nasledovne

π(Student_Name)FRENCH ∩ π(Student_Name)GERMAN>
Meno študenta
Vivek
Geeta

Poznámka: Jediným obmedzením v množine rozdielu medzi dvoma vzťahmi je, že oba vzťahy musia mať rovnakú množinu atribútov.

6. Premenovať (ρ): Premenovanie je unárna operácia používaná na premenovanie atribútov vzťahu.

 ρ(a/b)R will rename the attribute 'b' of the relation by 'a'.>

7. Krížový produkt (X): Krížový produkt medzi dvoma vzťahmi. Povedzme A a B, takže krížový súčin medzi A X B bude mať za následok všetky atribúty A nasledované každým atribútom B. Každý záznam A sa spáruje s každým záznamom B.

Príklad:

java listnode

A

názov Vek Sex
Ram 14 M
do konca pätnásť F
Kim dvadsať M

B

ID Samozrejme
1 DS
2 DBMS

A X B

názov Vek Sex ID Samozrejme
Ram 14 M 1 DS
Ram 14 M 2 DBMS
do konca pätnásť F 1 DS
do konca pätnásť F 2 DBMS
Kim dvadsať M 1 DS
Kim dvadsať M 2 DBMS

Poznámka: Ak A má „n“ n-tic a B má „m“ n-tic, potom A X B bude mať „n*m“ n-tic.

Odvodené operátory

Toto sú niektoré z odvodených operátorov, ktoré sú odvodené od základných operátorov.

  1. Prirodzené spojenie (⋈)
  2. Podmienené pripojenie

1. Prirodzené spojenie (⋈): Prirodzené spojenie je binárny operátor. Prirodzené spojenie dvoch alebo viacerých vzťahov bude mať za následok množinu všetkých kombinácií n-tic, kde majú rovnaký spoločný atribút.

Príklad:

EMP

názov ID Dept_Name
A 120 IT
B 125 HR
C 110 Predaj
D 111 IT

DLH

Dept_Name manažér
Predaj A
Výroba S
IT A

Prirodzené spojenie medzi EMP a DEPT s podmienkou:

EMP.Dept_Name = DEPT.Dept_Name

EMP ⋈ DEPT

konverzia nfa na dfa
názov ID Dept_Name manažér
A 120 IT A
C 110 Predaj A
D 111 IT A

2. Podmienečné pripojenie: Podmienené spojenie funguje podobne ako prirodzené spojenie. Pri prirodzenom spojení je predvolená podmienka rovnaká medzi spoločnými atribútmi, zatiaľ čo pri podmienenom spojení môžeme zadať akúkoľvek podmienku, ako je väčšia, menšia alebo nerovná.

Príklad:

R

ID Sex Marks
1 F Štyri
2 F 55
3 F 60

S

ID Sex Marks
10 M dvadsať
jedenásť M 22
12 M 59

Spojte sa medzi R a S s podmienkou R.marks>= S.marks

R.ID R.Sex R.Marks S.ID S.Sex S.Marks
1 F Štyri 10 M dvadsať
1 F Štyri jedenásť M 22
2 F 55 10 M dvadsať
2 F 55 jedenásť M 22
3 F 60 10 M dvadsať
3 F 60 jedenásť M 22
3 F 60 12 M 59

Relačný počet

Keďže relačná algebra je procedurálny dopytovací jazyk, relačný počet je neprocedurálny dopytovací jazyk. V podstate sa zaoberá konečnými výsledkami. Vždy mi povie, čo mám robiť, ale nikdy mi nepovie, ako to mám urobiť.

Existujú dva typy relačného počtu

  1. N-ticový relačný počet (TRC)
  2. Doménový relačný počet (DRC)

Podrobné články:
Základné-operátory-v-relačnej-algebre
Operátory rozšírenej relačnej algebry