Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések

Hasonló előadás


Az előadások a következő témára: "Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések"— Előadás másolata:

1 Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések
3. gyakorlat Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések

2 SELECT ... oszlopok kiválasztása (projekció) (6)
FROM ... táblanév(-ek) (Descartes szorzat) (1) [WHERE ... ] sorok kiválasztása (szelekció) (2) [CONNECT BY ... [START WITH ...]]hierarchia kezelés (3) [GROUP BY ... ] csoportosítás (4) [HAVING ... ] csoportok közötti válogatás (5) [{UNION | UNION ALL | INTERSECT | MINUS} alselect] (7) [ORDER BY ... ] eredménysorok rendezése (8) [FOR UPDATE OF …] kiválasztott sorok zárolása az (9)

3 Táblák összekapcsolása -- JOIN
SELECT Szelekciólista FROM tábla1 |{INNER|LEFT|RIGHT|FULL} JOIN tábla2 {ON | USING} WHERE GROUP BY HAVING ORDER BY

4 Hierarchia lekérdezése ORACLE-ben
Az SQL nyelv ORACLE-ben használt bővítése lehetővé teszi, hogy egy táblában kódolt hierarchikus adatokat a hierarchiának megfelelő sorrendben lekérdezzük. Pl.: Alkalmazottak fa-szerkezetű lekérdezése a gyökér felől (főnök => beosztott irány) indulva

5 CONNECT BY - specifikálja a kapcsolatot a szülő és a gyerek sorok között, amely alapján a tábla sorait hierarchiába lehet kapcsolni. PRIOR: a PRIOR operátoros kifejezés reprezentálja a szülőt, először ez lesz kiértékelve a kiválasztott sorra, majd a másik oldali kifejezés a tábla összes sorára. Azon sorok lesznek a gyerek sorok, amelyekre a feltétel igaz. (A fabejárási irányt határozza meg ezáltal.) START WITH : melyik csomóponton induljon. LEVEL: pszeudó oszlop, amely lehetővé teszi annak a szintnek a lekérdezését, amelyen az egyes adatok a hierarchiában szerepelnek (pszeudó oszlop: nincs a táblában tárolva, de úgy viselkedik mint egy normál oszlop)

6 Allekérdezés SQL utasításon belül SELECT használata
FROM (inline nézet) WHERE (logikai operátor, halmaz) Külső utasítás számára ad vissza eredménysorokat Kiértékelés belülről halad kifelé (több szint)

7 Allekérdezés -- FROM Mindig használjunk másodlagos táblanevet
Kívül minősített névvel lehet a belső eredményre hivatkozni 3.3 feladat 2. megoldás

8 Allekérdezés -- WHERE IN, ANY, ALL, EXISTS logikai operátorok Halmazok
Halmazműveletek: UNION, INTERSECT, MINUS Nem tartalmazhat másodlagos táblanevet Kívülről nem lehet rá hivatkozni 3.3 feladat 3. megoldás

9 NULL értékű sorral való kiegészítés
3.10 feladat (+) használata Azon tábla kapcsolóoszlopát jelöljük meg (+) jellel, melyben NULL értékű sorral való kiegészítést kérünk.


Letölteni ppt "Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések"

Hasonló előadás


Google Hirdetések