logo

Introduktion af relationel algebra i DBMS

Forudsætning: Relationel model i DBMS

Relationel algebra er et proceduremæssigt forespørgselssprog. Relationel algebra giver hovedsageligt et teoretisk grundlag for relationelle databaser og SQL . Hovedformålet med at bruge Relationel Algebra er at definere operatorer, der transformerer en eller flere inputrelationer til en outputrelation. Da disse operatører accepterer relationer som input og producerer relationer som output, kan de kombineres og bruges til at udtrykke potentielt komplekse forespørgsler, der transformerer potentielt mange inputrelationer (hvis data er lagret i databasen) til en enkelt outputrelation (forespørgslens resultater) . Da det er ren matematik, er der ingen brug af engelske nøgleord i relationel algebra, og operatorer er repræsenteret ved hjælp af symboler.



Grundlæggende operatører

Disse er de grundlæggende/fundamentale operatorer, der bruges i relationel algebra.

  1. Udvalg (σ)
  2. Projektion(π)
  3. Union (U)
  4. Indstil forskel (-)
  5. Indstil skæringspunkt (∩)
  6. Omdøb (ρ)
  7. Kartesisk produkt (X)

1. Valg(σ): Det bruges til at vælge nødvendige tuples af relationerne.

Eksempel:



EN B C
1 2 4
2 2 3
3 2 3
4 3 4

For ovenstående forhold, σ(c>3)R vil vælge de tupler, der har c mere end 3.

EN B C
1 2 4
4 3 4

Bemærk: Udvælgelsesoperatøren vælger kun de nødvendige tupler, men viser dem ikke. Til visning bruges dataprojektionsoperatøren.

2. Projektion(π): Det bruges til at projicere nødvendige kolonnedata fra en relation.



vigtigste metode java

Eksempel: Overvej tabel 1. Antag, at vi ønsker kolonne B og C fra Relation R.

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

Bemærk: Som standard fjerner projektion duplikerede data.

3. Union(U): Unionsoperation i relationel algebra er det samme som unionsoperation i mængdeteori.

Eksempel:

FRANSK

Elevnavn Roll_Number
Vædder 01
Mohan 02
Vivek 13
Geeta 17

TYSK

Elevnavn Roll_Number
Vivek 13
Geeta 17
Shyam enogtyve
Rohan 25

Overvej følgende tabel over studerende, der har forskellige valgfrie emner i deres kursus.

π(Student_Name)FRENCH U π(Student_Name)GERMAN>
Elevnavn
Vædder
Mohan
Vivek
Geeta
Shyam
Rohan

Bemærk: Den eneste begrænsning i foreningen af ​​to relationer er, at begge relationer skal have det samme sæt attributter.

4. Indstil forskel(-): Mængdeforskel i relationel algebra er den samme mængdeforskeloperation som i mængdeteori.

Eksempel: Fra ovenstående tabel over FRENCH og TYSK bruges Set Difference som følger

π(Student_Name)FRENCH - π(Student_Name)GERMAN>
Elevnavn
Vædder
Mohan

Bemærk: Den eneste begrænsning i sætforskellen mellem to relationer er, at begge relationer skal have det samme sæt attributter.

5. Indstil skæringspunkt (∩): Sæt skæringspunkt i relationel algebra er den samme mængde skæringsoperation i mængdeteori.

Eksempel: Fra ovenstående tabel over FRENCH og TYSK bruges Set Intersection som følger

π(Student_Name)FRENCH ∩ π(Student_Name)GERMAN>
Elevnavn
Vivek
Geeta

Bemærk: Den eneste begrænsning i sætforskellen mellem to relationer er, at begge relationer skal have det samme sæt attributter.

6. Omdøb (ρ): Omdøb er en unær operation, der bruges til at omdøbe attributter for en relation.

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

7. Krydsprodukt (X): Krydsprodukt mellem to relationer. Lad os sige A og B, så krydsproduktet mellem A X B vil resultere i alle attributterne for A efterfulgt af hver attribut for B. Hver post af A vil parres med hver post af B.

Eksempel:

cobol programmering

EN

Navn Alder Køn
Vædder 14 M
til slutningen femten F
Kim tyve M

B

ID Rute
1 DS
2 DBMS

A X B

Navn Alder Køn ID Rute
Vædder 14 M 1 DS
Vædder 14 M 2 DBMS
til slutningen femten F 1 DS
til slutningen femten F 2 DBMS
Kim tyve M 1 DS
Kim tyve M 2 DBMS

Bemærk: Hvis A har 'n' tupler, og B har 'm' tupler, vil A X B have 'n*m' tupler.

Afledte operatører

Dette er nogle af de afledte operatorer, som er afledt af de grundlæggende operatorer.

  1. Natural Join(⋈)
  2. Betinget tilslutning

1. Naturlig tilslutning(⋈): Natural join er en binær operator. Naturlig sammenføjning mellem to eller flere relationer vil resultere i et sæt af alle kombinationer af tupler, hvor de har samme fælles egenskab.

Eksempel:

EMP

jquery ved klik
Navn ID Afd._navn
EN 120 DET
B 125 HR
C 110 Salg
D 111 DET

DEPT

Afd._navn Manager
Salg OG
Produktion MED
DET EN

Naturlig sammenføjning mellem EMP og DEPT med betingelse:

EMP.Dept_Name = DEPT.Dept_Name

EMP ⋈ DEPT

Navn ID Afd._navn Manager
EN 120 DET EN
C 110 Salg OG
D 111 DET EN

2. Betinget tilslutning: Betinget sammenføjning fungerer på samme måde som naturlig sammenføjning. I naturlig sammenføjning er betingelsen som standard lig mellem fælles attributter, mens vi i betinget sammenføjning kan angive enhver betingelse, såsom større end, mindre end eller ikke lig.

Eksempel:

R

ID Køn Mærker
1 F Fire. Fem
2 F 55
3 F 60

S

ID Køn Mærker
10 M tyve
elleve M 22
12 M 59

Sammenføj mellem R og S med betingelse R.mærker>= S.mærker

R.ID R.Sex R.Marks S.ID S.Sex S.Marks
1 F Fire. Fem 10 M tyve
1 F Fire. Fem elleve M 22
2 F 55 10 M tyve
2 F 55 elleve M 22
3 F 60 10 M tyve
3 F 60 elleve M 22
3 F 60 12 M 59

Relationsregning

Da Relational Algebra er et proceduremæssigt forespørgselssprog, er Relational Calculus et ikke-proceduremæssigt forespørgselssprog. Det handler grundlæggende om slutresultaterne. Den fortæller mig altid, hvad jeg skal gøre, men fortæller mig aldrig, hvordan jeg skal gøre det.

Der er to typer af Relationsregning

  1. Tuple Relational Calculus (TRC)
  2. Domain Relational Calculus (DRC)

Uddybende artikler:
Grundlæggende-operatører-i-relationel-algebra
Udvidede Relational Algebra Operators