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.