WHERE-sats

Anger vilka poster i tabellerna i FROM-satsen som påverkas av en SELECT-, UPDATE- eller DELETE-instruktion.

Syntax

SELECT fältlista
FROM tabelluttryck
WHERE villkor

En SELECT-instruktion med en WHERE-sats består av följande element:

Element

Beskrivning

fältlista

Namnet på det eller de fält som ska hämtas tillsammans med eventuella fältnamnsalias, urvalspredikat (ALL, DISTINCT, DISTINCTROW eller TOP) eller andra SELECT-alternativ.

tabelluttryck

Namnet på den eller de tabeller som data ska hämtas från.

villkor

Ett uttryck som posterna måste uppfylla för att tas med i frågeresultatet.


Kommentarer

Databasmotorn i Microsoft Access väljer ut de poster som uppfyller villkoren i WHERE-satsen. Om du inte anger någon WHERE-sats returneras alla rader i tabellen. Om du anger flera tabeller i frågan och du har inte har någon WHERE- eller JOIN-sats genererar frågan en Kartesiansk produkt av tabellerna.

WHERE är valfritt, men när satsen är med står den efter FROM-satsen. Du kan till exempel välja alla anställda från avdelningen Sales (WHERE Dept = 'Sales') eller alla kunder mellan 18 och 30 år (WHERE Age Between 18 And 30).

Om du inte använder någon JOIN-sats till att koppla flera tabeller går det inte att uppdatera det resulterande Recordset-objektet.

WHERE fungerar ungefär som HAVING. WHERE anger vilka poster som ska väljas ut. På samma sätt avgör HAVING vilka poster som ska visas när posterna grupperats med GROUP BY.

Använd WHERE-satsen till att eliminera de poster du inte vill gruppera med en GROUP BY-sats.

Använd uttryck till att avgöra vilka poster som SQL-instruktioner returnerar. Följande SQL-instruktion väljer till exempel alla anställda vars lön är högre än 21 000:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

En WHERE-sats kan innehålla upp till 40 uttryck som kombineras med logiska operatorer som And och Or.

När du anger ett fältnamn som innehåller blanksteg eller punkter ska du sätta namnet inom hakparenteser ([ ]). En tabell med kundinformation kan till exempel innehålla information om specifika kunder:

SELECT [Customer’s Favorite Restarant]

När du anger argumentet villkor måste datum stå i amerikanskt format, även om du inte använder den amerikanska versionen av databasmotorn i Microsoft Access. Till exempel skrivs den 10 maj 1996 som 10/5/96 i Sverige och som 5/10/96 i USA. Du måste omge datum med nummertecknet (#) som i följande exempel.

Om du vill hitta poster med datumet den 10 maj 1996 i en databas i Sverige måste du använda följande SQL-instruktion:

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

Du kan också använda funktionen DateValue som tar med de nationella inställningarna i Microsoft Windows® i beräkningen. Använd till exempel den här koden i USA:

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

Och den här koden i Sverige:

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

Obs!: Om kolumnen som refereras i kriteriesträngen har typen GUID används en något annan syntax för uttrycket:

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

Se till att ta med de kapslade krullparenteser och bindestreck som visas.



Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×