adatbázis rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7...

46
1 1 Adatbázis Rendszerek Budapesti Műszaki és Gazdaságtudományi Egyetem Fotogrammetria és Térinformatika Tanszék 2010 Dr. Alhusain Othman [email protected]

Upload: lekhuong

Post on 30-Apr-2018

219 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

11

Adatbázis Rendszerek

Budapesti Műszaki és Gazdaságtudományi Egyetem

Fotogrammetria és Térinformatika Tanszék

2010

Dr. Alhusain Othman

[email protected]

Page 2: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

2

7. Relációs algebra

7.1. Bevezetés7.2. Klasszikus- és relációs- algebra 7.3. A relációs adatmodell műveleti része7.4. Relációs algebrai műveletek csoportjai

7.4.1. Mag Műveletek:7.4.1.1. Halmaz műveletek

- Unió- Metszet- Különbség

7.4.1.2. Sor/Oszlop műveletek- Vetítés- Kiválasztás- Descartes szorzat- Természetes összekapcsolás

7.4.1.3. Más műveletek7.4.2. Kiegészítő műveletek7.4.3. Relációs műveletek összegezve

7.5. Relációs algebra multi-halmazokon7.6. Aggregációs operátorok7.7. Csoportosítási operátorok

Page 3: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

3

7. Relációs algebra

7.1. Bevezetés:

A felhasználás során nagyon fontos hogy, a különböző felhasználók tudják módosítni és lekérdezni az adatbázis tartalmát.

Az adatbázis tehát attól lesz „élő”, hogy csatlakozik hozzá egy funkciócsoport, amely lehetővé teszi a különböző műveletek elvégzését.

A relációs adatmodell műveleti része ezen dinamikusadatkezelő és adatlekérdező lehetőségeket foglalja magába.

Page 4: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

4

7. Relációs algebra

7.2. Klasszikus- és relációs- algebra:

7.2.1. Klasszikus algebra:

Matematikai rendszer amely foglal magában:

Operandusok: változok vagy értékek amelyekből uj értékeket lehet generálni.

Operatorok: Szimbólumok amelyek jelölik eljárásokat új értékek generálására adott régi értékekből.

Pld.

1 + 5 = 6

Page 5: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

5

7. Relációs algebra

7.2. Klasszikus- és relációs- algebra:

7.2.2. Relációs algebra:

Egy fajta algebra amelyben az operandusok relációk (táblák) vagy változók amelyek relációkat (táblákat) képviselik.

Az operatorok a relációs algebrában ügy vannak tervezve hogy képesek végrehajtani legtöbb szükséges műveletet a relációkon.

• Az eredményezett egy fajta algebrát amely használható „kereső nyelv”-ként az adatbázisban.

Page 6: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

6

7. Relációs algebra

7.3. A relációs adatmodell műveleti része:

7.1.1. Algebrai művelet:

A relációs algebrai műveletek mindegyike minden esetben relációkon értelmezett.

Algebrai műveletek biztos elméleti alapokon nyugszik, melyet összefoglalóan relációs algebrának neveznek.

Általában az algebrai (lekérdező) műveletek nem változtatják meg az operandusként megadott relációkat (táblák), csak olvassák azokat, majd az eredményt leteszik egy új, önálló eredmény relációba.

Ez azt jelenti, hogy bemenő operandusai a relációk (táblák) lehetnek, melyekkel az alábbi műveletek végezhetők:

adatok lekérdezése

adatok módosítása

adatok felvitele Adatkezelő

adatok törlése

Page 7: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

7

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.1. Halmaz műveletek:

Műveletek amelyek szükségeltetik azonos relációs séma

minden két (vagy több) operandusokban.

Unió,

Metszet,

Különbség.

Page 8: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

8

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.2. Sor/oszlop műveletek:

Kiválasztás: Rekordok kiválasztásara.

Vetítés: Oszlopok kiválasztásara.

Produktum és Összekapcsolás: Relációk kombinálására.

Page 9: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

9

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.3. Más műveletek:

Átnevezés: Relációk és attribútumok át nevezésére.

Kiterjesztés:

Csoportosítás:

Page 10: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

10

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.4. Mag műveletek összegezve:

Halmaz Műveletek Sor/oszlop Műveletek

Más Műveletek

- unió- metszet

- különbség

- osztás

- szelekció- projekció- Join , egyesítés

- kiterjesztés

- csoportosítás

- átnevezések

Page 11: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

11

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.2. Kiegészítő műveletek:

Page 12: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

12

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:7.4.3. Relációs műveletek összegezve:

A relációs algebra műveletei közül az első három játssza a legnagyobb szerepet, mivel ezek a műveletek fordulnak elő a leggyakrabban a lekérdezések során.

A szelekciós műveletek a relációban szereplő rekord előfordulások egy részhalmazának az előállításra szolgál. A kiválasztott részhalmazba csak azok a rekord előfordulások kerülnek bele, melyek kielégítik a szelekciós feltételt.

A szelekció elvégzéséhez tehát meg kell adni egy relációt és egy feltételt, a feltételnek olyannak kell kennie, hogy a reláció minden rekordjára kiértékelhető legyen, s egy logikai értéket adjon vissza, azon rekordok, melyekre a feltétel igaz értékű lesz, bekerülnek az eredményrelációba.

Úgyis mondhatnánk, hogy a szelekció a tábla néhány sorát adja meg eredményként.

Page 13: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

13

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.1. Halmaz műveletek:

Mindkét reláció sémájának ugyanazon attribútumokat kell tartalmaznia.

Azonos, de más néven szereplő attribútumokat át kell nevezni.

Oszlopokat azonos sorrendűre kell rendezni.

Page 14: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

14

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.1. Halmaz műveletek:

R VezNév KerNév Szül

Kovács József 1967

Nagy Mária 1967

S VezNév KerNév Szül

Nagy Mária 1967

Szabó Géza 1977

Page 15: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

15

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.1. Halmaz műveletek:

Unió:

R S: R-ben és S-ben szereplő sorok összessége.

Mindkettőben szereplő sor csak egyszer szerepel az eredményben.

R S VezNév KerNév Szül

Kovács József 1967

Nagy Mária 1967

Szabó Géza 1977

Page 16: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

16

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.1. Halmaz műveletek:

Metszet:

R S: R-ben és S-ben egyaránt szereplő sorok.

R S VezNév KerNév Szül

Nagy Mária 1967

Page 17: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

17

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.1. Halmaz műveletek:

Különbség:

R – S: Azon sorok, amelyek szerepelnek R-ben, de nincsenek S-ben

R – S S – R !

R – S VezNév KerNév Szül

Kovács József 1967

Page 18: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

18

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.2. Sor/oszlop műveletek:

Vetités:

Új reláció létrehozása, a régi reláció bizonyos oszlopaiból.

VezNév, Szül(R): De! : Szül(R):

VezNév Szül

Kovács 1967

Nagy 1967

Szül

1967

Page 19: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

19

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.2. Sor/oszlop műveletek:

Kiválasztás:

Új reláció létrehozása, a régi reláció bizonyos soraiból

Sorok kiválasztása feltétel alapján

Szül>1970(S):

VezNév KerNév Szül

Szabó Géza 1977

Page 20: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

20

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.2. Sor/oszlop műveletek:

Descartes szorzat:

R S: új reláció létrehozása, amely sémája az R és S

sémájának egyesítése, sorai R és S sorainak kombinációja

Azonos nevű attribútumok esetén átnevezés

1 2

3 4

X Y

5 6

7 8

Y Z

5 6

7 8

S.Y Z

5 6

7 8

1 2

X R.Y

3 4

1 2

3 4

Page 21: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

21

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.2. Sor/oszlop műveletek:

Összekapcsolás: Theta

Új reláció, ahol a megegyező attribútumok alapján táblákat kapcsolunk össze.

R3 := R1 JOINC R2

Hajtson végre a produktum R1 * R2.

Utána kell alkalmazni egy „kiválasztási” műveletet az eredményre.

C bár milyen logikai feltétel lehet.

=<

Page 22: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

22

7. Relációs algebra

Öszekapcsolás: Theta

Elad( kocsma, sör, ár ) Kocsmák( név, cím )Joe’s Bud 2.50 Joe’s Maple St.Joe’s Miller 2.75 Sue’sRiver Rd.Sue’s Bud 2.50Sue’s Coors 3.00

KocsmaInfo := Elad JOIN Elad.kocsma = Kocsmák.név Kocsmák

BarInfo(kocsma, sör, ár, név, cím )Joe’s Bud 2.50 Joe’s Maple St.Joe’s Miller 2.75 Joe’s Maple St.Sue’s Bud 2.50 Sue’s River Rd.Sue’s Coors 3.00 Sue’s River Rd.

Page 23: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

23

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.2. Sor/oszlop műveletek:

Összekapcsolás: Természetes

Gyakori összekapcsolás amely két reláció kapcsol össze, azzal hogy:

– Egyenlíti az azonos nevű attribútumokat.

– Vetíteni egy másolat ebből a kiegyenlített attributumokat.

– Jelölése: R3 :=R1 JOIN R2

Page 24: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

24

7. Relációs algebra

Összekapcsolás: Természetes

Elad( kocsma, sör, ár ) Kocsmák(kocsma, cím )Joe’s Bud 2.50 Joe’s Maple St.Joe’s Miller 2.75 Sue’s River Rd.Sue’s Bud 2.50Sue’s Coors 3.00

KocsmaInfo := Elad JOIN KocsmákA Kocsmák.név-ból kellet létrehozni Kocsmák.kocsma hogy biztosítjuk a természetes „join” mükődését.

KocsmaInfo( kocsma, sör, ár, cím )Joe’s Bud 2.50 Maple St.Joe’s Milller 2.75 Maple St.Sue’s Bud 2.50 River Rd.Sue’s Coors 3.00 River Rd.

Page 25: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

25

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.3. Más műveletek:

Mező attribútum átnevezés:

Az „átnevezés” RENAME operator rendel új sémát a relációhoz

Formája R1(A1, …., An):=R2

Ezzel a reláció R1 (A1, ….An) attributumai az R2 relációből veszi az értékük.

Page 26: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

26

7. Relációs algebra

7.4. Relációs algebrai műveletek csoportjai:

7.4.1. Mag (eredeti) relációs algebrai műveletek:

7.4.1.3. Más műveletek:

Mező attribútum átnevezés: Kocsmák(név, cím )Joe’s Maple St.Sue’s River Rd.

R( kocsma, cím )Joe’s Maple St.Sue’s River Rd.

R(kocsma, cím) := Kocsmák

Page 27: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

27

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon):

A Táska (vagy multhalmaz ) hasonlít a szokásos halmazra, ezzel a feltétellel hogy az elemek ismétlődhatnak.

pld: {4,2,4,6} egy táska (multihalmaz).

és : {4,2,3} is táska (multihalmaz) de egyben halmaz is.

Az SQL nagyon alkalmazható a táskára (a multihalmazokra).

Egyes műveletek (pld. Vetítés ) hatékonyabb a táskákra mint a halmazokra.

Műveletek mint a kiválasztás, a kivetítés, a produktom, és az összekapcsolás mind alkalmazható a táskákra.

Page 28: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

28

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon):

R( A, B )1 25 61 2

SELECTA+B<5 (R) = A B1 21 2

Page 29: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

29

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon):

R( A, B )1 25 61 2

PROJECTA (R) = A151

Page 30: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

30

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Produktum

R( A, B ) S( B, C )1 2 3 45 6 7 81 2

R * S = A R.B S.B C1 2 3 41 2 7 85 6 3 45 6 7 81 2 3 41 2 7 8

Page 31: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

31

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Theta join

R( A, B ) S( B, C )1 2 3 45 6 7 81 2

R JOIN R.B<S.B S = A R.B S.B C1 2 3 41 2 7 85 6 7 81 2 3 41 2 7 8

Page 32: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

32

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Unió

Az elem szerepel az uniós táskában ahányszor szerepel mind a kettő táskában.

Pld.: {4,2,1} UNION {1,1,2,3,1} = {1,1,1,1,2,2,3,4}

Page 33: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

33

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Metszet

Az elem szerepel a metszet táskában annyiszor mint a minimális szereplése az egyik táskában.

Pld.: {4,2,1} INTER {1,1,2,3,1} = {1,2}

{1,2,1,1} INTER {1,2,1,3} = {1,1,2}.

Page 34: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

34

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Különbözet

Az elem szerepel az (A-B) különbözet táskában annyiszor mint ahányszor szerepel az A táskában mínusz ahányszor szerepel a B táskában.

Pld.: {1,2,1,1} - {1,2,3} = {1,2}

Page 35: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

35

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Duplázás elimináció

Formája: R1 := DELTA(R2).

R1 Tartalmáz egy másolatot minden rekordból amely szerepel R2 ban egy vagy többször.

R = ( A B )1 23 41 2

DELTA(R) = A B1 23 4

Page 36: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

36

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Metszet

Az elem szerepel a metszet táskában annyiszor mint a minimális szereplése az egyik táskában.

Pld.: {4,2,1} INTER {1,1,2,3,1} = {1,2}

{1,2,1,1} INTER {1,2,1,3} = {1,1,2}.

Page 37: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

37

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Metszet

Az elem szerepel a metszet táskában annyiszor mint a minimális szereplése az egyik táskában.

Pld.: {4,2,1} INTER {1,1,2,3,1} = {1,2}

{1,2,1,1} INTER {1,2,1,3} = {1,1,2}.

Page 38: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

38

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Szortirozás

Formája: R1 := TAUL (R2).

L lista az R2 nek attributmai egy csoportja

R1 a rekordoknak a listája tárolva először az első L-es attribútum alapján, utána a második L-es attribútum alapján, és igy tovább.

Véletlenszerűen szét bontja a kapcsolatokat.

TAU az egyetlen operator amelynek az eredménye nem halmaz sem táska.

Page 39: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

39

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Szortirozás

R = ( A B )1 23 45 2

TAUB (R) = [(5,2), (1,2), (3,4)]

Page 40: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

40

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Kiterjesztett vetítés

A PROJ operator felhasználásával lehet engedni a lista L hogy tartalmaz véletlen kifejezések az attribútumokat felhasználva.

– Matematikai attribútumokat alkalmazhatók (A+B).

– Duplikált előfordulása ugyan az egy attribútum megengedett.

Page 41: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

41

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Kiterjesztett vetítés

R = ( A B )1 23 4

PROJA+B,A,A (R) = A+B A1 A23 1 17 3 3

Page 42: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

42

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Külső összekapcsolás

Ha a cél összekapcsolni R és S relációk C keresztül (RJOINC S).

Az R-nek a rekordja amelynek nincs S-es rekord amellyel tud vele kapcsolni „Logos” rekordnak nevezik.

Ugyanaz S esetén.

Az Outerjoin tartja a „logos” rekordok kiegészítve őket egy Null-val a kapcsolási eredmény számításnál.

Page 43: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

43

7. Relációs algebra

7.5. Relációs algebra multi-halmazokon (táskákon): Külső összekapcsolás

R = ( A B ) S = ( B C )1 2 2 34 5 6 7

(1,2) joins with (2,3), but the other two tuplesare dangling.

R OUTERJOIN S = A B C1 2 34 5 NULLNULL 6 7

Page 44: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

44

7. Relációs algebra

7.6. Aggregációs operatorok:

Aggregációs operatorok nem minősülnek reláció algebrának.

Igy csak alkalmazhatók (egész) oszlopokra produkálva egyetlen egy eredményt.

A legfontosabbak: Sum (összegezni), Avg (átlagolni), Count (számolni), Min (minimális érték), Max )maximális érték).

R = ( A B )1 33 43 2

SUM(A) = 7COUNT(A) = 3MAX(B) = 4AVG(B) = 3

Page 45: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

45

7. Relációs algebra

7.7. Csoportosítási operatorok:

Formája: R1 := GAMMAL (R2). L elemek lista amely:

Vagy egyedi csoportosítási attribútumok

Vagy aggregáció operator Agg(A) ahol A egy attribútum.

Csoportosíts R az összes attribútum lista alapján L-ben.

Avagy alkot egy csoport minden érték listának ezeknek az attribútumoknak R-ben.

Minden csoport kell számolni az AGG(A) minden aggregáció az L listán.

Az eredmény fog tartalmazni egy rekord minden csoportnak:

A csoportosítási attribútumok

Az csoportjuk aggregációk

Page 46: Adatbázis Rendszerek - web.fmt.bme.huweb.fmt.bme.hu/subjects/adatbazis_r/7 .relacios_algebra.pdf · BarInfo(kocsma, sör, ár, név, cím ) Joe’s Bud 2.50 Joe’s Maple St. Joe’s

46

7. Relációs algebra

7.7. Csoportosítási operatorok:

GAMMAA,B,AVG(C) (R) = ??R = ( A B C )

1 2 34 5 61 2 5

Előszor, csoportosítj R A és B alapján:

A B C1 2 31 2 54 5 6

Másodszor, C átlagolása minden csoportban:

A B AVG(C)1 2 44 5 6