Delsætningen WHERE

Angiver, hvilke poster fra tabellerne på listen i FROM-delsætningen, der påvirkes af en SELECT-, UPDATE- eller DELETE-sætning.

Syntaks

SELECT feltliste
FROM tableexpression
WHERE criteria

En SELECT-sætning, der indeholder en WHERE-delsætning, består af følgende dele:

Del

Beskrivelse

feltliste

Navnet på det eller de felter, der skal hentes sammen med vilkårlige feltnavnealiasser, udvælgelsesprædikater (ALL, DISTINCT, DISTINCTROW eller TOP) eller andre SELECT-sætningsindstillinger.

tableexpression

Navnet på den/de tabel eller tabeller, som dataene hentes fra.

criteria

Et udtryk, som poster skal opfylde for at blive medtaget i forespørgselsresultaterne.


Bemærkninger

Microsoft Access-databaseprogrammet vælger de poster, der opfylder betingelserne på listen i WHERE-delsætningen. Hvis du ikke angiver en WHERE-delsætning, returnerer forespørgslen alle rækker i tabellen. Hvis du angiver mere end én tabel i forespørgslen, og du ikke har inkluderet en WHERE-delsætning eller en JOIN-delsætning, så opretter forespørgslen et Cartesian-produkt af tabellerne.

WHERE er valgfrit, men følger efter FROM, når det medtages. Du kan f.eks. vælge alle medarbejdere i salgsafdelingen (WHERE Dept = 'Sales') eller alle kunder i alderen 18-30 (WHERE Age Between 18 And 30).

Hvis du ikke bruger en JOIN-delsætning til at udføre SQL-join-handlinger i flere tabeller, så kan det endelige Postsæt-objekt ikke opdateres.

WHERE fungerer som HAVING. WHERE bestemmer, hvilke poster der vælges. Tilsvarende, når poster grupperes ved hjælp af GROUP BY, så bestemmer HAVING, hvilke poster der skal vises.

Brug WHERE-delsætningen til at fjerne poster, du ikke vil gruppere efter en GROUP BY-delsætning.

Brug forskellige udtryk til at bestemme, hvilke poster SQL-sætningen returnerer. F.eks. markerer følgende SQL-sætning alle medarbejdere, der tjener mere i løn end 21.000 USD:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

En WHERE-delsætning kan indeholde op til 40 udtryk, der er kædet sammen ved hjælp af logiske operatorer, f.eks. And og Or.

Når du angiver et feltnavn, der indeholder et mellemrum eller en tegnsætning, så skal du sætte navnet i kantede parenteser ([ ]). F.eks. kan en tabel med kundeoplysninger indeholde oplysninger om bestemte kunder:

SELECT [Customer’s Favorite Restarant]

Når du angiver criteria-argumentet, skal datokonstanter være i amerikansk format, også selvom du ikke bruger den amerikanske version af Microsoft Access-databaseprogrammet. Eksempelvis skrives d. 10. maj 1996 som 10/5/96 i Storbritannien og 5/10/96 i USA. Sørg for at sætte datokonstanterne mellem nummertegnet (#), som vist i de følgende eksempler.

For at finde poster dateret d. 10. maj 1996 i en database i Storbritannien skal du bruge følgende SQL-sætning:

SELECT * FROM Orders WHERE ShippedDate = #5/10/96#;

Du kan også bruge funktionen Datoværdi, som registrerer de internationale indstillinger, der er fastlagt af Microsoft Windows®. Eksempelvis skal nedenstående kode bruges for USA:

SELECT * FROM Orders WHERE ShippedDate = DateValue('5/10/96');

Og nedenstående kode skal bruges for Storbritannien:

SELECT * FROM Orders WHERE ShippedDate = DateValue('10/5/96');

Bemærk!: Hvis kolonnen, der henvises til i criteria-strengen, er af typen Guid, så bruger criteria-udtrykket en lidt anderledes syntaks:

WHERE ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

Sørg for at medtage de indlejrede klammeparenteser og bindestreger, som vist.



Udvid dine Office-færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Bliv Office Insider

Var disse oplysninger nyttige?

Tak for din feedback!

Tak for din feedback! Det lyder, som om det vil kunne hjælpe, hvis du bliver sat i forbindelse med en af vores Office-supportteknikere.

×