I enhver database program, der bruger Structured Query Language ( SQL) til at oprette forespørgsler , "Vælg " forespørgslen er arbejdshesten . Alt fra simple visninger til komplekse sammenføjninger og beregninger udføres via variationer på Select forespørgsel. Den sub- select eller sub- query er simpelthen en SELECT-sætning indlejret inde i en anden udvælgelsesforespørgsel . Den nemmeste måde at opbygge og forstå en sub -select query er at opbygge og udføre begge dele af forespørgslen individuelt for at sikre, at du har de resultater, du ønsker , og derefter kombinere dem i en sub -select forespørgsel. Dette eksempel vil bygge en forespørgsel til at vise , hvilke kunder har ikke købt noget i over 90 dage . Instruktioner
1
Opret en forespørgsel til at vælge og vise alle kunder. At skabe nogen forespørgsel i Access, skal du klikke på " Forespørgsler " under menuen Objekt og klik på " Design " eller " Ny" på menulinjen . Når Query åbnes , klik på "Vis" og derefter " SQL View" for at åbne en tekst vinduet til indtastning af forespørgslen. Indtast forespørgslen , og klik derefter på den røde udråbstegn at køre forespørgslen
syntaks er som følger: .
"Select Customers.ID , Customers.Company fra kunder "
Dette viser alle kundens id'er og firmanavne i kundernes databasen .
2
Opret en forespørgsel , der viser alle ordrer, der er blevet placeret i de sidste 90 dage . Syntaksen for denne forespørgsel ser sådan ud:
" Vælg Orders.OrderID fra ordrer , hvor Orders.CustomerID = Customers.CustomerID og Orders.OrderDate > Date () - 90)
Denne forespørgsel vil kun vise " OrderID " felt, der har et gyldigt kunde-id i det, og et salg i de sidste 90 dage.
3
Opret sub -select forespørgsel ved at kombinere disse to forespørgsler .
"Select Customers.ID , Customers.Company fra kunder, hvor ikke eksisterer
( vælg Orders.OrderID
fra ordrer
hvor Orders.CustomerID = Customers.CustomerID
og Orders.OrderDate > Date () - 90)
Denne forespørgsel i realiteten, viser alt fra den første forespørgsel, som ikke er i den anden forespørgsel. Med andre ord viser det alle kunder , der ikke har købt noget i de sidste 90 dage . Nøglen til sub- select er " hvor ikke eksisterer "-klausul .