2012. tavaszi félév Véső Tamás Véső Tamás OE­NIK 2012. 1 / 29.

Slides:



Advertisements
Hasonló előadás
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Advertisements

10. gyakorlat SQL SELECT.
2012. tavaszi félév Véső Tamás. A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik. Ismeretük szükséges,
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Lekérdezések SQL-ben Relációs algebra A SELECT utasítás
Ablak módszer Rózsa Győző
Analitikus függvények
Analitikus, statisztikai és szélsőérték fv-k Hári Veronika
Analitikus, statisztikai és szélsőérték fv-k Rózsa Győző
Microsoft Access Lekérdezések.
2012. tavaszi félév Vitéz Gergely. A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik. Ismeretük szükséges,
Adatbázisok használata 1 (1. gyakorlat)
Delphi programozás alapjai
2012. tavaszi félév Véső Tamás. A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik. Ismeretük szükséges,
Adatbázisok használata
Adatbázis gyakorlat – SUBSELECT – Tarcsi Ádám március.
– Adattáblák & adatok kezelése – Tarcsi Ádám január Adatbázis gyakorlat.
2012. március 6. Rózsa Győző Interaktív környezet március Rózsa Győző
Többtáblás lekérdezések, allekérdezések Rózsa Győző
SQL – DQL (Data Query Language ) adat lekérdezések
kötelező program, SZÁMONKÉRÉSEK
SQL Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések
Delphi programozás alapjai Nagyváradi Anett PTE PMMK MIT.
2006. október 2.Markó Tamás, PTE TTK1 Az Oracle SQL 4. Összesítés és csoportosítás lekérdezésekben. Halmazműveletek.
SQL92 lehetőségek KL A tábla B tábla C view adatok VIEW működése utasítás: SELECT.. FROM A,B … SELECT.. FROM C Az adatok a hivatkozáskor állítódnak elő.
ADATBÁZISOK
ADATBÁZISOK
ADATBÁZISOK
ADATBÁZISOK
Adattáblák létrehozása, módosítása, tranzakciók, megszorítások Rózsa Győző.
Részletező csoportosítások Rózsa Győző
ADATBÁZIS HASZNÁLAT I. 2. gyakorlat. Figyelem!!! A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem.
Kifejezések. A legfontosabb függvények.
Összesítés és csoportosítás lekérdezésekben. Halmazműveletek.
Nézettáblák létrehozása, módosítása és törlése
SQL.
Az SQL nyelv alapjai.
Nézettáblák, felső-N analízis Március 20. Rózsa Győző.
V 1.0 ÓE-NIK, Programozás I. A Microsoft Visual Studio 2010 használata.
Access XP Kifejezés-szerkesztő Összehasonlító operátorok:
2012. tavaszi félév Véső Tamás. Kérdezze le minden dolgozó nevét, jövedelmét, részlegének nevét és a részlegében dolgozók legkisebb és legnagyobb jövedelmét,
ADATBÁZIS HASZNÁLAT I. 4. gyakorlat. Figyelem!!! A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem.
2012. tavaszi félév Véső Tamás Véső Tamás OE­NIK / 18.
Adattáblák létrehozása, módosítása, tranzakciók, megszorítások Rózsa Győző.
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Részletező csoportosítások Hári Veronika
Részletező csoportosítások Rózsa Győző
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele a minimum elégséges érdemjegynek!
Adatbázis használat I. 2. gyakorlat.
ADATBÁZIS HASZNÁLAT I. 3. gyakorlat. Figyelem!!! A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem.
Adatbázisok használata 2. gyakorlat Rózsa Győző
Készítette: Tóth Ervin
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Adatbázisok gyakorlat 10. gyakorlat SQL SELECT, Összekapcsolás, Nézettáblák.
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
SQL SELECT parancsok Kottyán László. A bemutató mintatáblái.
1 Informatikai Szakképzési Portál Adatbázis kezelés DQL – Adatlekérdező nyelv.
Adatbázisok Fleiner Rita, Tankönyv:
Adatbázisok gyakorlat
V 1.0 ÓE-NIK-AII, Programozás I. Karaktersorozatok Feladatok.
Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések
2. AB gyakorlat Egytáblás csoportosító lekérdezések.
Adatbázis-kezelés 3-4. Adatok lekérdezése utasítás általános formája SELECT [ALL/DISTINCT] {*/, …, } FROM [ ], …, [ ] [WHERE GROUP BY, …, HAVING ORDER.
– SELECT - 1. – Tarcsi Ádám január Adatbázis gyakorlat.
Adatbázis rendszerek I
V 1.0 OE-NIK, Programozás I. Gyakorlás egydimenziós tömbökkel Többdimenziós tömbök Gyakorló feladatok.
SQL aggregálás, csoportosítás és összekapcsolás Adatbázisok 1.
Előadás másolata:

2012. tavaszi félév Véső Tamás Véső Tamás OE­NIK / 29

Normalizálás kis ZH: Féléves feladatkiírások (II.22) Tipikus hibák a kis ZH-n: Rossz függőségek Felírt függőség felüldefiniálása Lépések be nem tartása Rossz vég és részeredmények Tipikus hibák a féléves feladatnál: Formai követelmények nem betartása, Tartalmi problémák: túl/sok kevés szöveg, Nem alaposan végiggondolt feladatkiírás, túl kevés adat Jelenleg (II.28) 16 elfogadott kiírás (‘+’), 2 formai hibás, 2 nem elfogadott (‘J’ v ‘1’) 3 nem leadott kiírás (‘---’ v ‘1’) Véső Tamás OE­NIK / 29

A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik. Ismeretük szükséges, de nem elégséges feltétele a sikeres zárthelyi(k)nek. Sikeres zárthelyihez, illetve vizsgához a jelen bemutató tartalmán felül a kötelező irodalomként megjelölt anyag, a gyakorlatokon szóban, illetve a táblán átadott tudnivalók ismerete, valamint a gyakorlatokon megoldott példák és az otthoni feldolgozás céljából kiadott feladatok önálló megoldásának képessége is szükséges. Véső Tamás OE­NIK / 29

 Például: ◦ EMP ◦ DEPT Használjuk a ‘DEPTNO’ Mezőt! Véső Tamás OE­NIK / 29

 Az Az eredmény. Véső Tamás OE­NIK / 29

SELECT FROM tábla1, tábla2, és így tovább WHERE GROUP BY HAVING ORDER BY; Mit fog ez produkálni és miért? SELECT * FROM emp, dept; Véső Tamás OE­NIK / 29

EMP és DEPT tábla összekapcsolása: Mindenképp kell valamilyen feltétel: SELECT a.ename, b.loc FROM emp a, dept b WHERE a.deptno = b.deptno; avagy: SELECT ename, loc FROM emp, dept WHERE emp.deptno=dept.deptno; Véső Tamás OE­NIK / 29

 Inner ◦ Az oszlopérték mindegyik táblában létezik  Left ◦ A kulcsszótól balra álló tábla sorai mindenképpen szerepelnek a listában  Right ◦ A kulcsszótól jobbra álló tábla sorai mindenképpen látszanak a listában  FULL ◦ Mindkettő oszlop sorai látszanak, még ha hiányosak is Véső Tamás OE­NIK / 29

Használata: SELECT [Szelekciók] FROM tábla1 INNER/LEFT/RIGHT/FULL JOIN tábla2 ON összekötőfeltétel USING(oszlop1,oszlop2,stb) … Véső Tamás OE­NIK / 29

SELECT ENAME, LOC FROM EMP INNER JOIN DEPT USING(deptno); SELECT ENAME, LOC FROM EMP LEFT JOIN DEPT USING(deptno); SELECT ENAME, LOC FROM EMP RIGHT JOIN DEPT USING(deptno); SELECT ENAME, LOC FROM EMP FULL JOIN DEPT USING(deptno); Van különbség? Véső Tamás OE­NIK / 29

Példa: Listázzuk az alkalmazottakat, és a főnökeik nevét! SELECT dolgozo.ename as ”Dolgozó neve”, fonok.ename as ” Főnök neve” FROM emp dolgozo, emp fonok WHERE dolgozo.mgr = fonok.empno; Hol van KING a listából? Véső Tamás OE­NIK / 29

 KING nincs a listában, mert nincs főnöke (nincs hozzá tartozó sor a főnök táblából)  Hogy előkerüljön az eredményben a főnököket LEFT JOIN segítségével kell kapcsolnunk:  SELECT dolgozo.ename as ”Dolgozó neve”, fonok.ename as ” Főnök neve” FROM emp dolgozo, emp fonok WHERE dolgozo.mgr = fonok.empno(+);

Véső Tamás OE­NIK / 29

SELECT LISTA FROM WHERE GROUP BY HAVING ORDER BY ; Véső Tamás OE­NIK / 29

Ha a FROM részben szerepel az allekérdezés, akkor azt INLINE nézetnek is nevezzük (Ezt mindig másodlagos táblanévvel kell ellátni, kivéve ha csak 1 van) Mennyi a részlegenkénti maximumfizetések átlaga? Véső Tamás OE­NIK / 29

Mennyi a részlegenkénti maximumfizetések átlaga? Select AVG(inlinepelda.Maxfizu) as "Maximum átlag" from (SELECT deptno as Reszlegszam, MAX(sal+nvl(comm,0)) as Maxfizu from emp group by deptno) inlinepelda; Véső Tamás OE­NIK / 29

 IN/NOT IN ◦ IGAZ, ha szerepel az adott halmazban/ha nem  ANY ◦ Ha a halmaz legalább egy eleme megfelel  ALL ◦ Ha a halmaz összes eleme megfelel  EXISTS / NOT EXISTS ◦ Ha a halmaz legalább egy elemet tartalmaz/Egyet sem Véső Tamás OE­NIK / 29

 A WHERE-ben szereplő allekérdezéseknél, összehasonlító reláció esetén a bal oldalon mindig csak oszlopkifejezés állhat, jobb oldalon szerepelhet allekérdezés is zárójelek között „(” „)”  Példa:  SELECT * FROM emp  WHERE deptno IN ( SELECT deptno FROM dept  WHERE UPPER(dname) = ‘DALLAS’) Véső Tamás OE­NIK / 29

Select * from emp where sal > ALL (Select sal from emp where sal between 1200 AND 2900); Select * from emp where sal > ANY (Select sal from emp where sal between 1200 AND 2900); Véső Tamás OE­NIK / 29

 Egyértékű lehet csak  Még utasításon belül sem lehet hivatkozni  Példa:  SELECT * FROM emp WHERE sal < (SELECT  AVG(sal) FROM emp) Véső Tamás OE­NIK / 29

 INSTR pl: INSTR(ename,’SM’) Meg lehet vizsgálni, hogy egy adott karaktert, avagy karakterláncot tartalmaz e az adott kifejezés. Ha igen, akkor visszaadja, hogy hol fordul elő, ha nem, akkor 0-át ad vissza Pl.: select instr(ename,'SM') from emp;  SUBSTR SUBSTR(kifejezés, hányadiktól, hányat) Karakterláncot darabolhatunk Pl.: select substr(ename,0,3) from emp;  LENGTH Karakterlánc hosszát adja vissza Pl.: select * from emp where length('ename') > 4; Véső Tamás OE­NIK / 29

 Az R és az L közt a különbség, hogy az egyik jobbra, a másik pedig balra igazítja a karakterláncot, és a másik oldalról kitölti a helyettesítő karakterrel.  Nézzük meg egy példán keresztül: SELECT RPAD(ename,6) || RPAD(’:’, ROUND((sal/1000),0)+1, ’#’) AS „Alkalmazottak és fizetésük” FROM emp ORDER BY sal DESC; Véső Tamás OE­NIK / 29

Jövő héten gépes ZH: Allekérdezések, Táblák összekapcsolása. MINDEN AMI KORÁBBAN IS VOLT! JÖVŐ HÉTEN FÉLÉVES NORMALIZÁLÁSÁT KELL LEADNI. KONZULTÁCIÓK normalizálás témakörben, részletes infó hamarosan. (NIK levlisták!) Véső Tamás OE­NIK / 29