Készítette: Tóth Ervin SQL Lekérdezések Készítette: Tóth Ervin
Az SQL szerepe, tulajdonságai Structured Query Language – Struktúrált Lekérdező Nyelv, amely adatbázisok kezelésére szolgáló lekérdező nyelv Az IBM dolgozta ki a DB2 relációs adatbáziskezelőjéhez Tulajdonságok: Az utasítások tetszés szerint tördelhetők Az utasítások végét pontosvessző zárja Kisbetűk és nagybetűk használata egyaránt lehetséges A listában lévő elemeket vesszővel választjuk el Az uatasítások egymásbaágyazhatók
Tudnivalók Az SQL nem algoritmikus nyelv, nem tartalmaz algoritmus szerkezeteket (elágazás, ciklus stb.) Az SQL halmaz orientált nyelv, mely azt jelenti, hogy nem kell definiálni a művelet végrehajtásának lépéseit, hanem a feladat nem eljárás szerű megfogalmazását kell megadni, melyek a reláció vagy relációk kiválasztott sorain hajtódnak végre Az optimális megoldás megtalálása a nyelvi processzor feladata, hogy egy adott visszakeresésben alkalmazhatóak-e indexek, vannak-e indexek vagy építsen-e fel új indexet Az SQL nem rekurzív nyelv.
Műveletek Megkülönböztetünk: Matematikai műveletek: +, -, *, /, **, ^ Stringműveletek: +, *, ||, & Bináris műveletek: NOT, AND, OR Összehasonlítás: <, >, =, !=; <>, NOT= Predikátumok: IS, LIKE, BETWEEN ... AND, IN, CHECK, WHERE, HAVING
SQL adatdefiníciós utasítások Az adatbázis szerkezetének megváltoztatására: CREATE – táblák létrehozása ALTER – táblák szerkezetének megváltoztatása DROP – táblák törlése RENAME – táblák átnevezése TRUNCATE – táblák csonkítása INSERT – új sorok beszúrása DELETE – sort vagy sorokat töröl
Példa CREATE TABLE tanulo( id_tanulo int, nev varchar(50), osztaly varchar(3) ); DROP TABLE tanulo; ALTER TABLE tanulo RENAME TO tanulok; ALTER TABLE tanulo ADD vezetek_nev varchar(50);
SQL adatkezelő utasítások Adatok olvasására az adatbázisból: SELECT – adat lekérdezése INSERT – adat létrehozása UPDATE – adat változtatása DELETE – adat törlése
Példa tanulo id_tanulo nev osztaly 192 Ervin 4/4 SELECT nev FROM tanulo WHERE id_tanulo=192; INSERT INTO tanulo VALUES (192, 'Ervin', '4/4'); UPDATE szemely SET nev='Tóth Ervin' WHERE ID=192; DELETE FROM szemely WHERE id_tanulo=192;
Összesítő függvények AVG - átlagérték SUM - összeg MAX - maximális érték MIN - minimális érték COUNT - elemek száma Példa: SELECT COUNT(nev) FROM tanulo WHERE osztay=’4/4';
Közönségkérdés SELECT nev FROM tanulo WHERE osztaly=’4/4’ ORDER BY nev; SELECT * FROM tanulo WHERE id_tanulo between 190 and 200; SELECT * FROM tanulo WHERE nev LIKE ’Ervin’; SELECT nev,osztaly FROM tanulo; SELECT nev,osztaly FROM tanulo WHERE nev=’Regina’ AND osztaly=’4/4’;
Köszönöm a figyelmet