Azokban az esetekben beszélünk allekérdezésről, amikor egy lekérdezés bármelyik adatát egy másik lekérdezés szolgáltatja. Ez esetben a szolgáltató lekérdezést allekérdezésnek, alkérdésnek, vagy alselectnek nevezzük.
Ez utóbbi a választó lekérdezés SQL kódjában szereplő SELECT záradékra utaló elnevezés.
Az allekérdezés – hasonlóan minden más lekérdezéshez – egy halmazt állít elő. Ha a halmaz egyelemű (tehát egy sort és egy oszlopot tartalmaz), akkor egyszerű dolgunk van, hiszen azt megadhatjuk feltételnek, összehasonlíthatunk vele, stb. Viszont, ha többelemű, akkor csak azt vizsgálhatjuk, hogy a főkérdésben szereplő mező elemei benne vannak, vagy nincsenek benne az allekérdés által visszaadott halmazban.
Ilyen esetben SQL-ben a WHERE záradékban csak az IN/NOT IN operátorok használhatóak.
Ebben a részfeladatban azt kell meghatároznunk, hogy hányan laknak abban a városban, ahol a legtöbben laknak.
Javasolt megoldás:
Megoldási terv:
A megoldást két részre kell bontanunk:
Először meg kell határoznunk, hogy az egyes városokban hányan laknak.
Utána pedig meg kell néznünk, hogy ezek közül melyikben laknak a legtöbben.
Ezt figyelembe véve a fő lekérdezésünkhöz készíteni fogunk egy segédlekérdezést (allekérdezést) is.
Javasolt megoldás lépései:
További, hasonló módon megoldható feladatok:
Készült az "Országos koordinációval a pedagógusképzés megújításáért” című TÁMOP-4.1.2.B.2-13/1-2013-0007 pályázat keretében. |
A tananyag az ELTESCORM keretrendszerrel készült