Kom godt i gang med SQL

Underforespørgsler

Når du skriver en SELECT-sætning, kan du angive flere SELECT-sætninger i WHERE-udtrykket. For hver yderligere SELECT startes en underforespørgsel.

En underforespørgsel kan derefter indeholde endnu en separat underforespørgsel, hvis resultat sættes ind i den oprindelige underforespørgsels WHERE-udtryk. Desuden kan et WHERE-udtryk indeholde underforespørgsler i flere søgekriterier. Underforespørgslen kan henvise til andre tabeller og kolonner end hovedforespørgslen.

Nedenfor vælges division og geografisk placering fra tabellen ORG for den medarbejder, der har id 280 i tabellen STAFF:

     SELECT DIVISION, LOCATION
        FROM ORG
        WHERE DEPTNUMB = (SELECT DEPT
                             FROM STAFF
                             WHERE ID = 280)

Når en sætning behandles, finder DB2 først frem til resultatet af underforespørgslen. Resultatet af underforespørgslen i eksemplet er 66, da medarbejder nr. 280 arbejder i afdeling 66. Det endelige resultat findes så i den række i tabellen ORG, hvor kolonnen DEPTNUMB har værdien 66. Det endelige resultat er:

     DIVISION   LOCATION
     ---------- -------------
     Western    San Francisco

Når du bruger en underforespørgsel, vurderer databasesystemet den og sætter resultatværdien direkte ind i WHERE-udtrykket.

Der er flere oplysninger om underforespørgsler under Korreleret underforespørgsel.



[ Øverst på siden | Forrige side | Næste side | Indholdsfortegnelse | Stikordsregister ]