Adatb zis rendszerek ii
Download
1 / 32

Adatbázis rendszerek II. - PowerPoint PPT Presentation


  • 61 Views
  • Uploaded on

Adatbázis rendszerek II. Műveletek táblákkal Az SQL nyelv elemei. Műveletek táblákkal. Projekció Szelekció Descartes szorzat Összekapcsolás (Join) Halmazműveletek Unió Metszet Különbség. Projekció.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Adatbázis rendszerek II.' - yannis


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Adatb zis rendszerek ii

Adatbázis rendszerek II.

Műveletek táblákkal

Az SQL nyelv elemei


M veletek t bl kkal
Műveletek táblákkal

  • Projekció

  • Szelekció

  • Descartes szorzat

  • Összekapcsolás (Join)

  • Halmazműveletek

    • Unió

    • Metszet

    • Különbség


Projekci
Projekció

Lekérdezés egy táblából - ugyanannyi sor, de az eredetinél kevesebb oszlop ( a tábla vertikális megszorítása)


Szelekci
Szelekció

  • Lekérdezés a táblából - ugyanannyi oszlop, de az eredetinél kevesebb sor (a tábla horizontális megszorítása)


Descartes szorzat
Descartes szorzat

  • A Descartes szorzat két táblából indul ki, és az eredményül kapott tábla úgy keletkezik, hogy az első tábla sorait minden lehetséges módon folytatjuk a második tábla minden sorával.


Sszekapcsol s join
Összekapcsolás (Join)

  • Az összekapcsolás művelete két vagy több relációt kapcsol össze egy-egy attributum érték összehasonlításával. Az összekapcsolás leggyakoribb esete amikor az attributumok egyezését vizsgáljuk.


Halmazm veletek
Halmazműveletek

A halmazműveletek azonos szerkezetű két vagy több reláció között végezhetők el.

  • Unió



Halmazm veletek2
Halmazműveletek

  • Különbség


SQL – strukturált lekérdező nyelv

A SQL jellemzése:

- a relációs algebrára épül

- kiterjed az adatkezelő tevékenységekre:

- adatdefiniáló (DDL)

- adatkezelő (DML)

- lekérdező (DQL)

- vezérlő (DCL)

- nem tartalmaz vezérlési, IO elemeket

- van interaktív és beépülő változata

Az SQL nem DBMS


SQL

Tipikus műveleti sorrend:

- objektumok, táblák létrehozása

- adatok felvitele

- adatok lekérdezése

- adatok módosítása

- szerkezetek módosítása

- működési környezet beállítása

Termék

Termék

kód

név

ár

dátum

Alma

1233

23

98.V.3

01.I.8

1253

783

Dió

Mogyi

4433

97.II.11

6233

Bab

79

75.X.2

Alma

1233

23

98.V.3


SQL- Utasítások csoportosítása

Definíció:

DDL: - objektum létrehozás CREATE

- objektum megszüntetés DROP

- objektum módosítás ALTER

Módosítás:

DML: - rekord felvitel INSERT

- rekord törlés DELETE

- rekord módosítás UPDATE

Lekérdezés:

DQL: - lekérdezés SELECT

Vezérlés

DCL: - védelem GRANT,..

- tranzakció kezelés COMMIT,..


Definíció:

Objektum létrehozása:

CREATE TABLE tnév (mnev1 tipus1 intfelt1, …,intfelt) ... ;

CHAR(n)

NUMBER(n,m)

DATE

PRIMARY KEY

NOT NULL

UNIQUE

CHECK felt

REFERENCING tabla

Definíció:

CREATE TABLE AUTO (RSZ CHAR(6) PRIMARY KEY,

AR NUMBER(9) NOT NULL, IDO DATE);


Definíció:

Objektum megszüntetése:

DROP TABLE tnév ;

Objektum séma módosítás:

ALTER TABLE tnév ADD | MODIFY (mnev tip intfelt | intfelt);


SQL- Utasítások csoportosítása

Definíció:

DDL: - objektum létrehozás CREATE

- objektum megszüntetés DROP

- objektum módosítás ALTER

Módosítás:

DML: - rekord felvitel INSERT

- rekord törlés DELETE

- rekord módosítás UPDATE

Lekérdezés:

DQL: - lekérdezés SELECT

Vezérlés

DCL: - védelem GRANT,..

- tranzakció kezelés COMMIT,..


Módosítás

Rekord felvitele:

INSERT INTO tabla VALUES (mezo=ertek,…);

Az érték lehet NULL is.

Nem maradhat ki mező.

Fontos a mezősorrend

INSERT INTO AUTO VALUES (“bju564”,234,”FIAT”);

INSERT INTO AUTO VALUES (“bju564”,234,NULL);

INSERT INTO AUTO VALUES (RSZ=“bju564”,...);


Módosítás

Rekord törlése:

DELETE FROM tabla WHERE feltétel;

A feltételnek eleget tevő rekordok törlődnek

Ha elmarad a WHERE tag, minden rekord törlődik

DELETE FROM AUTO WHERE AR<1200000;

Rekord módosítása:

UPDATE tabla SET mezo= érték,... WHERE feltétel;

A feltételnek eleget tevő rekordok módosulnak

Ha elmarad a WHERE tag, minden rekord módosul

UPDATE AUTO SET AR = AR * 1.2 WHERE AR<1200000;


SQL- Utasítások csoportosítása

Definíció:

DDL: - objektum létrehozás CREATE

- objektum megszüntetés DROP

- objektum módosítás ALTER

Módosítás:

DML: - rekord felvitel INSERT

- rekord törlés DELETE

- rekord módosítás UPDATE

Lekérdezés:

DQL: - lekérdezés SELECT

Vezérlés

DCL: - védelem GRANT,..

- tranzakció kezelés COMMIT,..


Lekérdezés:

Adatok lekérdezése:

SELECT mezőlista

FROM tabla1,tabla2,

... JOIN...

WHERE feltétel

GROUP BY cskif – csoportosítás

HAVING feltétel – ha a csoportra további megszorítást akarunk adni

ORDER BY –rendezés

Pl:

SELECT kód, név, jegy FROM hallgató, tanult tárgyak WHERE tanszék=“menedzser” GROUP BY név HAVING szülév<1984;


SQL

SELECT - a projekció megadása

SELECT mlista FROMtábla;

SELECT RSZ, TIPUS FROM AUTO;

Az mlista helyén * áll, ha minden mező kell


SQL

SELECT - a szelekció megadása

SELECT mlsita FROM tábla WHERE feltétel;

SELECT * FROM AUTO WHERE SZIN = ”KÉK” OR

TIPUS = ”MAZDA”;


SQL

Műveletek kombinálása:

SELECT RSZ FROM AUTO WHERE SZIN = ”PIROS”

OR SZIN=”KEK”;


SQL

SELECT - a join megadása

SELECT mlista FROM tabla1, tabla2,.. WHERE feltétel;

Ha a feltétel elmarad

Descartes szorzatot

kapunk

Kettőnél több tábla

is összekapcsolható


SQL

Szelekciós join:

SELECT * FROM AUTO, EMBER WHERE

TULAJ = IGSZ;

Ha több táblában is azonos elnevezésű mező van, akkor a

kibővített mezőnevet használjuk: tábla.mező

SELECT * FROM AUTO, EMBER WHERE

AUTO.TULAJ = EMBER.IGSZ;

Ha hosszú a táblanév alias nevet használhatunk: tábla alias

SELECT * FROM AUTO A, EMBER E WHERE

A.TULAJ = E.IGSZ;


SQL

SELECT - kifejezés megadása

SELECT kifejezés (mezőnév,... FROM …;

Az előállító kifejezés

SELECT AR/100 UJAR FROM AUTO;


SQL

SELECT - az aggregáció megadása

SELECT aggregációs-lista FROM tábla;

SUM(mez.kif) AVG(mez.kif)

COUNT(mez.kif) MAX(mez.kif)

MIN(mez.kif)

SELECT COUNT(*) FROM AUTO;


SQL

SELECT - az aggregáció és csoportképzés megadása

SELECT aggregációs-lista FROMtáblaGROUP BY csopképzkif;

SELECT TIPUS, AVG(AR) FROM AUTO GROUP BY TIPUS;


SQL

SELECT - eredmény rekordok rendezése

SELECT mlistaFROM tábla ORDER BY mezo1 mod1, mezo2 ...;

ASC

DESC

A második mező szerinti szempont csak az első egyezősége

esetén lényeges

SELECT RSZ, TIPUS, AR FROM AUTO ORDER BY

AR DESC, TIPUS;

Lehet sorszámmal is hivatkozni a mezőkre

SELECT RSZ, TIPUS, AR FROM AUTO ORDER BY

3 DESC, 2;


A keres si felt telben megadhat sszehasonl t oper torok
A keresési feltételben megadható összehasonlító operátorok

  • numerikus, karakteres és dátum típusú adatokra

  • halmazokra


A keres si felt telben szerepl sz veges minta megad sa
A keresési feltételben szereplő operátorokszöveges minta megadása

  • A LIKE operátort karakteres mezők összehasonlítására alkalmazhatjuk. Két speciális karakter adható meg: % jel tetszőleges hosszúságú karakter sorozatot helyettesít, _ aláhúzás karakter pedig egy tetszőleges karaktert. Például:


Logikai oper torok
Logikai operátorok operátorok

  • Az összehasonlító operátorok precedenciája (végrehajtási sorrendje) csökkenő sorrendben:


SQL operátorokmintapéldák

BOROK(kod, nev, gyarto, fajta, ar)

VEVO(vkod, nev, cim)

RENDELES(vevo, bor, mennyiseg,datum)

1. azon vevők, akik rendeltek Bikavért

SELECT V.NEV FROM VEVO V, RENDELES R, BOROK B

WHERE V.VKOD = R.VEVO AND R.BOR = B.KOD AND

B.NEV LIKE ”BIKAVER%”;

2. Melyik gyártó termel 5-nél több vörös bort

SELECT GYARTO FROM BOROK WHERE FAJTA = ”VOROS”

GROUP BY GYARTO HAVING COUNT(*) > 5;


ad