Adatbázis rendszerek. 5. előadás Adatbázis tervezés. Koppányi Zoltán

Hasonló dokumentumok
Adatbázis rendszerek. 5. előadás Adatbázis tervezés. Koppányi Zoltán

ADATBÁZIS RENDSZEREK. Attributum típusok, normalizálsá, relációs algebra. Krausz Nikol, Medve András, Molnár Bence

ADATBÁZIS RENDSZEREK. Attributum típusok, relációs algebra. Krausz Nikol, Medve András, Molnár Bence


Adatbázis rendszerek 2. előadás. Relációs algebra

Adatbázis rendszerek 2. előadás. Relációs algebra

Adatbázis rendszerek. 4. előadás Redundancia, normalizálás

ADATBÁZIS RENDSZEREK. Adatbázis tervezés. Krausz Nikol, Medve András, Molnár Bence

5.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Lekérdezések az SQL-ben 2.rész

ADATBÁZIS-KEZELÉS. Relációalgebra, 5NF

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Relációs algebra 1.rész alapok

Adatbázis rendszerek 7. Matematikai rendszer amely foglal magában:

Adatbázis-kezelés. alapfogalmak

Lekérdezések az SQL-ben 1.rész

Adatbázis rendszerek. 3. előadás Adatbázis tervezés

Lekérdezések az SQL-ben 1.rész

Access gyakorlati feladatok lépésről lépésre

Csima Judit október 24.

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP /1/A

Adatbáziskezelés. Indexek, normalizálás NZS 1

Adatmodellezés, alapfogalmak. Vassányi István

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner,

Adatmodellezés. 1. Fogalmi modell

Fogalmak: Adatbázis Tábla Adatbázis sorai: Adatbázis oszlopai azonosító mező, egyedi kulcs Lekérdezések Jelentés Adattípusok: Szöveg Feljegyzés Szám

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

Adatbázisok elmélete 12. előadás

ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben

Adatbázis Rendszerek

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

Adatbázis, adatbázis-kezelő

Relációs adatbázisok tervezése ---2

Adatbázisok gyakorlat

7. előadás. Karbantartási anomáliák, 1NF, 2NF, 3NF, BCNF. Adatbázisrendszerek előadás november 3.

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

Access alapok. Megnevezés Művelet Minta. Új adatbázis létrehozása. Új / Üres adatbázis.. Tábla létrehozása tervező nézetben.

Több felhasználó párhuzamosan olvashatja, bővítheti, módosíthatja és törölheti az adatokat Az adatok konzisztenciájának és biztonságának biztosítása

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa:

Adatbázisok elmélete 4. előadás

Adatbázisok elmélete

NORMALIZÁLÁS. Funkcionális függés Redundancia 1NF, 2NF, 3NF

Normálformák Normalizálás ADATBÁZISKEZELÉS ÉS KÖNYVTÁRI RENDSZERSZERVEZÉS 1 / 2

SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok

Adatmodellek. 2. rész

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázisok I. Jánosi-Rancz Katalin Tünde 327A 1-1

Adatbázismodellek. 1. ábra Hierarchikus modell

Adatbázisok gyakorlat

Adatbázisok II. rész

Adatbázis-kezelés Access XP-vel. Tanmenet

Haladó irodai számítógépes képzés tematika

Adatbázis használat I. 1. gyakorlat

ALAPOK. 0 és 255 közé eső számértékek tárolására. Számértékek, például távolságok, pontszámok, darabszámok.

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

Adatbázisok elmélete

7. Gyakorlat A relációs adatmodell műveleti része

Programozás. Adatbázis-kezelés (alapok) Fodor Attila

Adatbázisok 1. Kósa Balázs gyakorlata alapján Készítette: Nagy Krisztián. 1. gyakorlat

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

7. előadás. Karbantartási anomáliák, 1NF, 2NF, 3NF, BCNF, 4NF, 5NF. Adatbázisrendszerek előadás november 7.

RELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás

6. Gyakorlat. Relációs adatbázis normalizálása

2.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Óravázlat. az ECDL oktatócsomaghoz. 5. modul. Adatbáziskezelés. Krea Kft Budapest, Szőlő u 21. Tel/fax: / krea@krea.

Mezők viszonya a relációs adatbázis tábláiban

LOGISZTIKAI ADATBÁZIS RENDSZEREK UNIÓ, ALLEKÉRDEZÉSEK

Adatbáziskezelés alapjai. jegyzet

TAJ. foglalkozás. gyógyszer

Informatikai alapismeretek Földtudományi BSC számára

Mveletek a relációs modellben. A felhasználónak szinte állandó jelleggel szüksége van az adatbázisban eltárolt adatok egy részére.

Relációs adatmodell. Adatbázisok használata

Adatbázis tervezés normál formák segítségével

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

2 Access 2016 zsebkönyv

ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben

ADATBÁZIS-KEZELÉS Demetrovics Katalin

LOGISZTIKAI ADATBÁZIS RENDSZEREK JOIN, AGGREGÁCIÓ

Feladatok A mai előadáson: Tankönyv -- Termékek feladatai:

Bevezetés: az SQL-be

Téradatokkal kapcsolatos elemzések és fejlesztések a FÖMI Térinformatikai Igazgatóságán

Adatbázisok elmélete 4. előadás

Marton József BME-TMIT. Adatbázisok VITMAB november 11.

T Adatbázisok-adatmodellezés

XML alapú adatbázis-kezelés. (Katona Endre diái alapján)

ADATBÁZISOK, 2018 ősz

Hogyan fogalmazzuk meg egyszerűen, egyértelműen a programozóknak, hogy milyen lekérdezésre, kimutatásra, jelentésre van szükségünk?

Gazdasági folyamatok térbeli elemzése. 5. elıadás

ADATBÁZISOK. 4. gyakorlat: Redundanciák, funkcionális függőségek

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán és Berényi Attila

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák

ADATBÁZISKEZELÉS ADATBÁZIS

ADATBÁZISOK, 2017 ősz

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

Adatbázisok elmélete 9. előadás

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

Adatbázisok 1. Az egyed-kapcsolat modell (E/K)

Adatbázisok. 4. gyakorlat. Adatmodellezés: E-K modellb l relációs adatbázisséma. Kötelez programok kiválasztása szeptember 24.

Példa Többértékű függőségek, 4NF, 5NF

Átírás:

Adatbázis rendszerek 5. előadás Adatbázis tervezés Koppányi Zoltán zoltan.koppanyi@gmail.com koppanyi.zoltan@epito.bme.hu

Előző óra Redundancia, konzisztencia Anomáliák: beszúrás, törlés, módosítás Funkcionális függőség Normalizálás és szerepe Normál formák Táblák dekompozíciója

Tervezési minták

Tervezési minták (design patterns) Tervezés történhet: Tapasztalat alapján Szabványok, előírások alapján Tervezési minták alapján A tervezési minták összegyűjtött tapasztalatok, amelyek mindegyike egy-egy gyakran előforduló problémára ad általánosított választ. Tervezési mintákkal találkozhatunk menedzsmentben, építészetben, stb.

Tervezési minták Először Christopher Alexander alkalmazta az építészetben. Wikipédiáról: Ő volt az, aki olyan, az építészetben újra és újra felbukkanó mintákat keresett, amelyek a jól megépített házakat jellemzik. Könyvében, a The Timeless Way of Buliding -ben olyan mintákat próbált leírni, amelyek segítségével akár egy kezdő építész is gyorsan jó épületeket tervezhet. A minták a magukban hordozott különböző építészek sok éves tapasztalata miatt szebb, jobb vagy használhatóbb házakat eredményeztek, mintha a tervezőnek csupán saját erejére támaszkodva kellett volna megterveznie azokat. Később, elsősorban az informaiktában, azon belül is szoftverfejlesztésben terjedt el: pl.: programtervezési minták

Tervezési minták Adatbázisok kialakítására végtelen sok lehetőség van. Azonban ezek közül csak néhány optimális. Akik már sok hasonló problémával találkoztak (azaz tapasztaltak) könnyen előhúzhatnak egy megoldást. A kezdők számára könnyebb ha dokumentálva kézhez kaphatják ezeket. Az itt bemutatásra kerülő minták, az előadók és a házifeladatok tapasztalatai alapján készültek.

A Jegyzőkönyv Feladat: Tipikus probléma, amikor katalógusokat, listákat kell létre hozni és azokat táblába tárolni. Ekkor gyakran előfordul például, hogy egy katalógus listában ugyanaz a gyártó szerepel. Megoldás: A redundancia csökkentése végett, ezeket az ismétlődéseket külön táblába emeljük ki. A kiemelt tábla kulcsát szerepeltetjük az eredeti táblában, mint idegen kulcsot.

A Mérés + Jegyzőkönyv Jegyzőkönyv ID: Számláló Lista1: Egész (IK) Lista2: Egész (IK) Érték: Bármi N N 1 Lista1 ID: Számláló Osztály: Szöveg... Lista2 1 ID: Számláló Osztály: Szöveg...

A Jegyzőkönyv Példa: kiindulás Katalógus ID Megnevezés Típus Gyártó Keresztmetszet Ár 1 T-1 beton BetonGyártó Kft. 1500 150 2 T-2 acél AcélGyártó Kft. 2500 250 3 P-2 beton Védmű Zrt. 4500 450 4 K-1 acél BetonGyártó Kft. 1200 650

A Jegyzőkönyv Példa: megoldás Katalógus ID Megnevezés TípusID GyártóID Keresztmetszet Ár 1 T-1 1 1 1500 150 2 T-2 2 2 2500 250 3 P-2 1 3 4500 450 4 K-1 2 1 1200 650 Típus ID Típus Egyéb 1 Beton... 2 Acél... Gyártó ID Gyártó Cím 1 BetonGyártó Kft.... 2 AcélGyártó Kft.... 3 Védmű Zrt....

A Jegyzőkönyv Példa: megoldás Katalógus ID Megnevezés TípusID GyártóID Keresztmetszet Ár 1 T-1 1 1 1500 150 2 T-2 2 2 2500 250 3 P-2 1 3 4500 450 4 K-1 2 1 1200 650 Típus ID Típus Egyéb 1 Beton... 2 Acél... Gyártó ID Gyártó Cím 1 BetonGyártó Kft.... 2 AcélGyártó Kft.... 3 Védmű Zrt....

A Jegyzőkönyv előnyök, hátrányok Előnyök Redundancia csökkenés Kiemelt táblában további információk (új oszlopok) könnyen megadhatóak. (pl. cím oszlop bevezetése az előző példában) A kiemelt táblában az értékek egyszerűen megváltoztathatóak, adatbázis anomáliák elkerülhetőek. (pl.: előző példában a gyártó neve) A kiemelt táblában a többszörös névfelvétel elkerülhető, ha arra egyediséget előírunk. (pl.: gyártó csak egyszer forduljon elő) Hátrányok: Az ID-k nehezen értelmezhetőek. A táblák között kapcsolat kialakítása szükséges egy esetleges lekérdezés esetén. (pl.: gyártó nevére való szűréskor)

A Mérés Feladat: Egy adott műszer több mérést végez, és azokat táblába rögzítjük. Szeretnénk nyilvántartani a műszerek méréseit egy adatbázisban Megoldás: Ahelyett, hogy minden műszerhez létrehozunk egy külön táblát, a méréseket egy táblában tároljuk és az egyes műszerekhez tartozó méréseket külön sorszámmal azonosítjuk.

A Mérés Mérés ID: Számláló SzenzorNév: Szöveg MérésSorszám: Egész MérésÉrték: Bármi

A Mérés Mérés ID Szenzor MérésSorszám Nyúlás 1 Bélyeg1 1 10 2 Bélyeg2 1 10 3 Bélyeg1 2 20 4 Bélyeg2 2 30 Gyakran használjuk az időbélyeget (timestamp), mint a mérés azonosítóját Mérés ID Szenzor Timestamp Nyúlás 1 Bélyeg1 2015.05.05 12:02:02 10 2 Bélyeg2 2015.05.05 12:02:02 10 3 Bélyeg1 2015.05.05 12:02:03 20 4 Bélyeg2 2015.05.05 12:02:03 30

A Mérés + Jegyzőkönyv Mérés ID: Számláló ListaElemID: Int (IK) MérésSorszám: Int MérésÉrték: Bármi N 1 Lista ID: Számláló Név: Szöveg...

A Mérés + Jegyzőkönyv Példa Mérés ID SzenzorID Timestamp Nyúlás 1 1 2015.05.05 12:02:02 10 2 2 2015.05.05 12:02:02 10 3 1 2015.05.05 12:02:03 20 4 2 2015.05.05 12:02:03 30 Szenzor ID Típus Egyéb 1 Bélyeg1... 2 Bélyeg2...

A Mérés előnyök, hátrányok Előnyök Könnyű új szenzor felvétele. A mérések együtt könnyebben kezelhetőek. Kevesebb tábla. Hátrányok: Egy adott műszer elemzéséhez a műszerre rá kell szűrni

A Flexibilis tábla Feladat: Gyakori probléma, hogy egy tábla attribútumai későbbiekben változhatnak, például a specifikáció változása miatt, vagy egy reláció (tábla) nagyon sok attribútumot tartalmaz, vagy a táblában gyakran fordulnak elő NULL elemek különböző attribútumokban. Megjegyzés: ebben az esetben általában az E/K diagram nem megfelelő, mivel az egyed több dolgot ír le- Ekkor szükséges az E/K diagram felülvizsgálata és további egyedek bevezetése. Azonban néha tervezési döntésként ezeket egy táblába karjuk tárolni. Ez általában hierarchikus kapcsolat megtartására utal. Megoldás: Egy táblába felvesszük az attribútumokat. Az adatokat tartalmazó táblába egy oszlopba megadjuk az attribútum nevét, egy másik oszlopba pedig az azokhoz tartozó értékeket.

A Flexibilis Tábla FelxibilisTábla ID: Számláló Név: Szöveg AttribútumID: Egész (IK) AttribútumÉrték: Bármi N 1 Attribútum ID: Számláló AttribútumNév: Szöveg...

Adatok hierarchikus kapcsolata Mérés Járművek Repülőgép Gépkocsi Bélyeges mérés Gyorsulás mérés Repülőgép Szintezési mérés Nagyobb halmaz Kisebb halmaz I. Kisebb halmaz III. Kisebb halmaz II.

A Flexibilis Tábla FelxibilisTábla ID: Számláló Név: Szöveg AttribútumID: Egész (IK) AttribútumÉrték: Bármi N 1 Attribútum ID: Számláló AttribútumNév: Szöveg...

A Flexibilis Tábla + Változó attribútum típus (komplikált) FelxibilisTábla ID: Számláló Név: Szöveg AttribútumID: Egész (IK) AttribútumÉrték: Szöveg N 1 Attribútum ID: Számláló AttribútumNév: Szöveg AttribútumTípus: Szöveg... Adata konverzióra van szükség az AttribútumTípus alapján az AttriútumÉrtéken

A Flexibilis tábla Példa: kiindulás Mérés ID Szenzor Gyorsulás Nyúlás Elmozdulás 1 Bélyeg NULL 10 NULL 2 Gyorsulás Mérő 20 NULL NULL 3 Szintező NULL NULL 120 4 Bélyeg NULL 10 NULL Járművek ID Szenzor Név Ajtók Gyorsulás száma Szárnyak Nyúlásfesztávja Elmozdulás Kerekek száma 1 Gépkocsi Bélyeg 1 NULL 4 10 NULL NULL 4 2 Gyorsulás Motor NULL 20 NULL NULL 2 3 Gépkocsi Szintező2 NULL 2 NULL 1204 4 Repülőgép Bélyeg 28 1120 12003

A Flexibilis tábla Példa: megoldás 1. Mérés ID Szenzor MérésTípusID Érték 1 Bélyeg 2 10 2 Gyorsulás Mérő 1 20 3 Szintező 3 120 4 Bélyeg 2 10 MérésTípus ID Mérés Típus 1 Gyorsulás 2 Nyúlás 3 Elmozdulás

A Flexibilis Tábla + Mérés FelxibilisTábla ID: Számláló Szenzor: Szöveg MérésSorszám: Egész AttribútumID: Egész AttribútumÉrték: Bármi N 1 Attribútum ID: Számláló AttribútumNév: Szöveg...

A Flexibilis tábla + Mérés Mérés ID Szenzor MérésSzámláló MérésTípusID Érték 1 Bélyeg 1 2 10 2 Gyorsulás Mérő 1 1 20 3 Szintező 1 3 120 4 Bélyeg 2 2 10 MérésTípus ID Mérés Típus 1 Gyorsulás 2 Nyúlás 3 Elmozdulás

A Flexibilis Tábla + Mérés + Jegyzőkönyv FelxibilisTábla ID: Számláló ListaElemID: Egész (IK) MérésSorszám: Egész (IK) AttribútumID: Egész AttribútumÉrték: Bármi N N 1 1 Lista ID: Számláló Név: Szöveg... Attribútum ID: Számláló AttribútumNév: Szöveg...

A Flexibilis tábla + Mérés + Jegyzőkönyv Mérés ID SzenzorID MérésSzámláló MérésTípusID Érték 1 1 1 2 10 2 2 1 1 20 3 3 1 3 120 4 1 2 2 10 5 3 2 3 35 6 1 3 2 125 Szenzor ID Mérés Típus 1 Bélyeg 2 Gyorsulás Mérő 3 Szintező MérésTípus ID Mérés Típus 1 Gyorsulás 2 Nyúlás 3 Elmozdulás

A Flexibilis tábla Példa: megoldás 2. Járművek ID Név AttribútumID Érték 1 Gépkocsi 1 1 4 2 Gépkocsi 1 3 4 3 Motor 3 2 4 Gépkocsi 2 1 2 5 Gépkocsi 2 3 3 6 Repülőgép 1 8 7 Repülőgép 2 120 8 Repülőgép 3 8 ID Attribútum 1 Ajtók száma 2 Szárnyak feszt. 3 Kerekek száma

A Flexibilis tábla előnyök, hátrányok Előnyök Könnyű új attribútum felvétele Elkerülhető sok NULL érték használata Hiarerchikus adatok együtt kezelhetőek Hátrányok: Nehezebb és bonyolultabb lekérdezések Nem minden esetben optimális megoldás

A Csomópont Feladat: Egyes esetekben előfordul, hogy egy entitás önmagára mutat, így például egy csomópontba befutó utak. Megoldás: Amennyiben a csomóponthoz két entitás tartozik, akkor azt egy táblába tárolhatjuk, ahol az összetartozást a tábla egy oszlopa adja, mely idegen kulcs a tábla elsődleges kulcsára. Több csatlakozás esetén egy külön kapcsoló táblába emeljük ki a kapcsolódó elemeket.

A Csomópont - egy ágú kapcsolat Út ID: Számláló Név: Szöveg Kapcsoló: Egész (IK) 1 N

A Csomópont Példa egy ágú kapcsolat Út ID Út név Csatlakozás 1 M0 2 2 M1 1 3 M2 1 4 M3 3

A Csomópont - több ágú kapcsolat Út ID: Számláló Név: Szöveg Csomópont ID: Számláló CspSzám: Egész Sorszám: Egész ÚtID: Egész (IK) 1 N

A Csomópont Példa több ágú kapcsolat Út ID Út név 1 M0 2 M1 3 M2 4 M3 Csomópont ID Csomópont név CspSzám Sorszám ÚtID 1 M0-M1-M3 1 1 1 2 M0-M1-M3 1 2 2 3 M0-M1-M3 1 3 4 4 M0-M3 2 1 1 5 M0-M3 2 2 4

Kiterjesztett relációs algebra

Az ismétlődések megszüntetése Delta op. A műveleteinket multihalmazon definiáltuk Így a sorok ismétlődhetnek Előfordul hogy csak a különálló sorokra vagyunk kíváncsiak Ekkor használható a delta operátor. δ(s ) δ Név Jegy Jelenlét Kiss Pista 1 14 ( Nagy Péter 3 14 )= Kiss Péter 1 14 Nagy Ákos 3 10 Név Jegy Jelenlét Kiss Pista 1 14 Nagy Péter 3 14 Nagy Ákos 3 10

Attribútum átnevezés Az attribútumok nevei átnevezhetőek Erre a nyilat ( ) használhatjuk egy operátor, művelet belsejében Így például projekcióesetén: π réginév újnév (S ) π Név Hallgató Név Jegy Jelenlét Kiss Pista 1 14 ( Nagy Péter 3 14 )= Kiss Péter 1 14 Nagy Ákos 3 10 Hallgató Kiss Pista Nagy Péter Nagy Ákos

Attribútum átnevezés Az átnevezés után ezzel az új attribútum névvel végezhetünk műveleteket. σ Hallgató=' Kiss Pista' ( π Név Hallgató Név Jegy Jelenlét Kiss Pista 1 14 ( Nagy Péter 3 14 )) Kiss Péter 1 14 Nagy Ákos 3 10 = Hallgató Kiss Pista

Kiterjesztett projekció Új attribútum vezethető le π Termék, Darab Ár Termék Jegy Jelenlét Tej 1 250 ( Kifli 3 50 ) Kenyér 2 120 Túró Rudi 3 200 = Termék Darab*Ár Tej 250 Kifli 150 Kenyér 240 Túró Rudi 600

Kiterjesztett projekció + Átnevezés A levezetett új attribútumot legtöbbször átnevezzük Termék Jegy Jelenlét π Termék, Darab Ár ÖsszÁr Tej 1 250 ( Kifli 3 50 ) Kenyér 2 120 Túró Rudi 3 200 = Termék ÖsszÁr Tej 250 Kifli 150 Kenyér 240 Túró Rudi 600

Csoportosítás Csoportosítás - a reláció sorainak csoportokba történő beosztása a reláció egy vagy több attribútumának értékétől függően. Jele: γ attr 1, attr 2,... (S ) Termék Darab Kenyér 1 γ ( Kifli Termék (π Termék 3 )) Tej 1 Kifli 3

Lépésről lépésre Termék Darab Termék Kenyér 1 π ( Kifli Termék 3 )= Tej 1 Kifli 3 Kenyér Kifli Tej Kifli γ Termék Termék Kenyér ( )= Kifli Tej Kifli Termék Kenyér Kifli Tej

Csoportosítás + Összegzés Ahogy láttuk a csoportosítás ugyanolyan elemeket von össze az adott attribútumon. Azonban a többi attribútum is tartalmaz sorokat, ezeket összesíthetjük valamilyen módon. Az összesítéshez különböző függvényeket alkalmazhatunk a gamma operátoron belül. Ezek a következőek: SUM, AVG, MIN, MAX, COUNT, FIRST, LAST

Az eredmény reláció felépítése Osszuk a reláció sorait csoportokba. Egy csoport azokat a sorokat tartalmazza, amelyeknek az {attr1, attr2, } listán szereplő csoportosítási attribútumokhoz tartozó értékei megegyeznek. Ha nincs csoportosítási attribútum, akkor az egész R reláció egy csoportot képez. Minden csoporthoz hozzunk létre olyan sort, amelyik tartalmazza: Szóban forgó csoport csoportosítási attribútumait. Az {attr1, attr2, } lista összesítési attribútumaira vonatkozó összesítéseket.

Csoportosítás + Összegzés (Példa - SUM) Termék Darab Kenyér 1 γ Termék,SUM(Darab) ( Kifli 3 )= Tej 2 Kifli 5 Termék SumDarab Kenyér 1 Kifli 8 Tej 2

Kiterjesztett projekció Új attribútum vezethető le π Termék, Darab Ár Termék Jegy Jelenlét Tej 1 250 ( Kifli 3 50 ) Kenyér 2 120 Túró Rudi 3 200 = Termék Darab*Ár Tej 250 Kifli 150 Kenyér 240 Túró Rudi 600

Csoportosítás + Összegzés (Példa Több attribútumra) γ Termék,SUM(Darab) ÖsszDb,SUM (ÖsszDb Ár ) ÖsszÁr Termék Darab Ár Kenyér 1 100 ( Kifli 3 100 )= Kifli 3 150 Kenyér 2 150 Tej 2 100 Termék ÖsszDb ÖsszÁr Kenyér 3 400 Kifli 6 750 Tej 2 200

Csoportosítás + Összegzés (Példa - COUNT) Termék Darab Kenyér 1 γ Termék,COUNT( Darab) ( Kifli 3 )= Tej 2 Kifli 5 Termék CountDarab Kenyér 1 Kifli 2 Tej 1

Csoportosítás + Összegzés (Példa - FIRST) Termék Darab Kenyér 1 γ Termék, FIRST( Darab) ( Kifli 3 )= Tej 2 Kifli 5 Termék FirstDarab Kenyér 1 Kifli 3 Tej 2

Csoportosítás + Összegzés (Példa Több attribútumra) γ Termék,SUM(Darab) ÖsszDb,SUM (ÖsszDb Ár ) ÖsszÁr Termék Darab Ár Kenyér 1 100 ( Kifli 3 100 )= Kifli 3 150 Kenyér 2 150 Tej 2 100 Termék ÖsszDb ÖsszÁr Kenyér 3 400 Kifli 6 750 Tej 2 200

Sorrendezés A rendezetlen halmazon a sorba rendezés operátor segítéségével a rekordok rendezhetőek. ABC sorrend, növekvő, stb. Jele: τ attr 1,attr 2,... (S ) Név Jegy Jelenlét Kiss Pista 1 14 τ Név Nagy Péter 4 14 )= ( Kiss Aladár 2 14 Nagy Péter 3 10 Név Jegy Jelenlét Kiss Aladár 2 14 Kiss Pista 1 14 Nagy Péter 4 14 Nagy Péter 3 10

Sorrendezés, több attribútumon Először az első attribútumon rendezünk, majd az azonos csoportba lévőket a következőn, és így tovább. Név Jegy Jelen lét τ Név, Jegy ( )= Kiss Pista 1 14 Nagy Péter 4 14 Kiss Aladár 2 14 Nagy Péter 3 10 Név Jegy Jelenlét Kiss Aladár 2 14 Kiss Pista 1 14 Nagy Péter 3 10 Nagy Péter 4 14

Köszönöm a figyelmet!