Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

1 5. Relationel algebra Operationer på relationer.

Lignende præsentationer


Præsentationer af emnet: "1 5. Relationel algebra Operationer på relationer."— Præsentationens transcript:

1 1 5. Relationel algebra Operationer på relationer

2 2 Algebra Domæner og operationer –Hver operation resulterer i et nyt "objekt" i domænet. –Unære og binære operationer –Eksempler N + og {+, *} N og {+, *, -} Q og {+, *, -, /} Mængder og {∩, U, −} Relationer og { π, σ, *, join, ∩, U, −} –Relationer er mængder af tupler

3 3 Mængde-operationer, 193 Union (foreningsmængde) R U S –Resultat = alle tupler i R og alle tupler i S Intersection (fællesmængde)R ∩ S –Resultat = alle tupler, der findes i både R og S Difference (mængde-differens)R − S –Resultat = alle tupler i R, der ikke findes i S R og S skal være "union kompatible" –skemaer med ens attributter samme attributnavne, samme rækkefølge

4 4 Projektion, 195 Udtager specielle kolonner / attributter Syntaks –π A, B, C (R)kun attributterne A, B, C –π = pi = projektion

5 5 Selektion, 196 Udtager specielle rækker / tupler Syntaks –σ betingelse (R) kun rækker, der opfylder betingelsen –σ = sigma = selektion –betingelse attribut operator attribut / konstant operator: –Tal:, =, ≤, ≥, ≠ –Strenge: =, ≠, 'konstant' kombineres med: AND, OR, NOT

6 6 Kartesiansk produkt, 197 Syntaks R  S Resultat = alle tupler i R "parret med" alle tupler i S. Antal tupler i resultat = (antal tupler i R) * (antal tupler i S)mange!! Antal attributter i resultat = (antal attributter i R) + (antal attributter i S)

7 7 Natural join, 198 Kartesiansk produkt bruges ofte med efterfølgende selektion. Samlet i én operator kaldet natural join –Resultat: Som kartesiansk produkt, men kun tupler, der har fælles værdi kommer med. –Fig. 5.6, side 200 –R join S R og S må have en "fælles" attribut –Fælles attribut med i resultat én gang.

8 8 Theta join, 199 Som join, men med specifik betingelse 1.Tag join 2.Lav select med betingelse Syntaks –R join betingelse S Eksempel –Fig , side 201

9 9 Kombination af operationer, 201 Algebra: Resultatet af en operation ligger i domænet - så resultatet kan bruges i en ny operation!! –Fig. 5.8, side 202 Ækvivalente udtryk –Ofte flere kan forskellige udtryk føre til samme resultat. –Bruges af DBMS'er til at omskrive / optimere forespørgsler.

10 10 Renaming, 203 Attributter kan renames for at –opnå "union kompatibilitet" kan det være nødvendigt at rename attributter –undgå navnesammenfald i natural join og kartesiansk produkt Fig. 5.9, side 204

11 11 Nødvendige og behagelige operationer, 205 Nødvendige operationer: –union –difference –selektion –projektion –kartesiansk produkt –renaming Behagelige operationer (kan udtrykkes vha. de nødvendige operationer) –intersection –natural join –theta join

12 12 Lineær notation Navngiv mellem-resultater. –mellemresultat := algebraisk udtryk Normal fremgangsmåde 1.natural / theta join over fremmednøgler 2.select, hvis der er yderligere betingelser 3.projektion, så vi fokuserer på ønskede attributter

13 13 Bags vs. mængder, 214 Bags (dansk: multi-sets) –Flere ens elementer tillades (modsat alm. mængder) –DBMS'er håndterer bags, ikke mængder af rækker. Hurtigere, fordi det ikke kræver check af gentagelser –Også relationelle operatorer på bags.

14 14 Udvidede operatorer, 221 Nye operatorer [med i DBMS'er] –duplicate eliminationbag → set –aggregeringmin, max, avg, count –gruppering –sortering –extended projectioninkl. beregninger –outerjoinvariant af join

15 15 Aggregering og gruppering, 222 Aggregerings-funktioner kan beregnes for hele relationen - eller for undergrupper. –γ liste_af_attributter_og_funktioner (R) –γ = gamma = gruppering –Fig. 5.18, side 226

16 16 Udvidelse af projektion, 226 Projektions-operatoren udvides til at tillade regneudtryk –Side 227 Husk, select påvirker aldrig data i relationen.

17 17 Outer joins, 228 "Dangling tuples" –matcher ikke nogle tupel i join med en anden relation –ikke med i resultat af join Outer join medtager "dangling tuples" –Fig. 5.19, side 229 –Variationer over outer join left outer join –dangling tuples i venstre relation med i resultat right outer join –dangling tuples i højre relation med i resultatet

18 18 Constraints, 231 Regler (business rules), der skal gælde på et relationelt skema. –Kan udtrykkes i relationel algebra. R =  ingen tupler i R R  Salle tupler i R findes også i S –sammen som R − S =  Fremmednøgle constraint –π fremmednøgle (R)  π primærnøgle (S) Generel constraint –σ karakter < 6 (student) = 


Download ppt "1 5. Relationel algebra Operationer på relationer."

Lignende præsentationer


Annoncer fra Google