WHERE-setningen

Angir hvilke poster fra tabellene som er oppført i setningsdelen FROM, påvirkes av en SELECT-, UPDATE- eller DELETE-setning.

Syntaks

SELECT feltliste
FROM tabelluttrykk
WHERE kriterier

En SELECT-setning som inneholder setningsdelen WHERE har følgende deler:

Del

Beskrivelse

feltliste

Navnet på feltet eller feltene som skal hentes sammen med eventuelle feltnavn-aliaser, merkingspredikater (ALL, DISTINCT, DISTINCTROW, eller TOP) eller andre SELECT-setningsvalg.

tabelluttrykk

Navnet på tabellen(e) som dataene er hentet fra.

vilkår

En uttrykk som poster må oppfylle for å inkluderes i resultatene av spørringen.


Kommentarer

Microsoft Access-databasemotoren velger postene som oppfyller vilkårene som er oppført i setningsdelen WHERE. Hvis du ikke angir en WHERE-setningsdel, returnerer spørringen alle radene fra tabellen. Hvis du angir mer enn én tabell i spørringen og du ikke har inkludert en WHERE- eller JOIN-setningsdel, genererer spørringen en kartesisk produkt av tabellene.

WHERE er valgfritt, men når den inkluderes, følger den FROM. Du kan for eksempel velge alle ansatte i salgsavdelingen (WHERE Dept = 'Sales') eller alle kunder mellom 30 og 18 år (WHERE Age Between 18 And 30).

Hvis du ikke bruker en JOIN-setningsdel til å utføre SQL-sammenføyingsoperasjonene i flere tabeller, kan ikke det resulterende objektet Recordset oppdateres.

WHERE ligner på HAVING. WHERE bestemmer hvilke poster som er valgt. Når poster grupperes etter GROUP BY, bestemmer HAVING hvilke poster som skal vises:

Bruk setningsdelen WHERE til å eliminere postene du ikke vil gruppere etter setningsdelen GROUP BY.

Bruke ulike uttrykk for å bestemme hvilke poster SQL-setningen returnerer. Følgende SQL-setning velger for eksempel alle ansatte som har mer enn $21 000:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

En WHERE-setningsdel kan inneholde opptil 40 uttrykk som er koblet sammen av logiske operatorer, for eksempel And og Or.

Når du skriver inn et feltnavn som inneholder et mellomrom eller tegn, må du omslutte navnet i hakeparenteser ([]). En tabell med kundeinformasjon kan for eksempel inneholde informasjon om bestemte kunder:

SELECT [Customer’s Favorite Restarant]

Når du angir argumentet criteria, må dato være i amerikansk format, selv om du ikke bruker den amerikanske versjonen av Microsoft Access-databasemotoren. 10. mai 1996 skrives for eksempel 10/5/96 i Storbritannia og 5/10/96 i USA. Pass på å plassere datolitteraler innenfor nummertegn (#) som vist i eksemplene nedenfor.

Hvis du vil finne poster datert 10. mai 1996 i en database i Storbritannia, må du bruke følgende SQL-setning:

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

Du kan også bruke funksjonen DateValue som kjenner til de internasjonale innstillingene opprettet av Microsoft Windows®. Bruk for eksempel denne koden for USA:

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

Og bruk denne koden for Storbritannia:

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

Merknad: Hvis kolonnen som det refereres til i kriteriestrengen, er av typen GUID , bruker vilkårsuttrykket en litt annen syntaks:

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

Pass på å ta med nestede klammeparenteser og bindestreker som vist.



Utvid ferdighetene dine
Utforsk opplæring
Vær først ute med de nye funksjonene
Bli med i Office Insiders

Var denne informasjonen nyttig?

Takk for tilbakemeldingen!

Takk for tilbakemeldingen! Det høres ut som det kan være lurt å sette deg i kontakt med én av våre Office-kundestøtteagenter.

×