Exempel på användning av datum som villkor i Access-frågor

Gäller för
Access för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Mer information om hur du skapar frågor finns i Introduktion till frågor.

Här följer några exempel på datumvillkor, från enkla datumfilter till mer komplexa beräkningar med datumintervall. I några av de mer komplexa exemplen används datumfunktioner i Access för att extrahera olika delar av ett datum så att rätt resultat returneras.

Artikelinnehåll

Exempel som använder dagens datum i sina villkor

Om du vill ta med poster som ... Använd det här kriteriet Frågeresultat
Innehåller dagens datum Datum() Returnerar poster som innehåller dagens datum. Om dagens datum är 2/2/2012, returneras poster där datumfältet är inställt på 2 februari 2012.
Innehåller gårdagens datum Datum()-1 Returnerar poster med gårdagens datum. Om dagens datum är 2/2/2012, returneras poster för 1 februari 2012.
Innehåller morgondagens datum Datum() + 1 Returnerar poster med morgondagens datum. Om dagens datum är den 2 februari 2012 returneras poster för den 3 februari 2012.
Innehåller datum inom den innevarande veckan DatumDel("ww", [Försäljningsdatum]) = DatumDel("ww", Datum()) och År( [Försäljningsdatum]) = År(Datum()) Returnerar poster med datum inom den innevarande veckan. En vecka i Access börjar på söndag och slutar på lördag.
Innehåller datum inom den föregående veckan År([Försäljningsdatum])* 53 + DatumDel("ww", [Försäljningsdatum]) = År(Datum())* 53 + DatumDel("ww", Datum()) - 1 Returnerar poster med datum inom den senaste veckan. En vecka i Access börjar på söndag och slutar på lördag.
Innehåller datum inom den följande veckan År([Försäljningsdatum])* 53+Datumdel("ww", [Försäljningsdatum]) = År(Datum())* 53+Datumdel("ww", Datum()) + 1 Returnerar poster med datum inom nästa vecka. En vecka i Access börjar på söndag och slutar på lördag.
Innehåller ett datum inom de senaste 7 dagarna Mellan Datum() och Datum()-6 Returnerar poster med datum inom de senaste 7 dagarna. Om dagens datum är 2/2/2012, returneras poster för perioden 24 januari 2012 till 2 februari 2012.
Innehåller ett datum inom den innevarande månaden År([Försäljningsdatum]) = År(Nu()) Och Månad([Försäljningsdatum]) = Månad(Nu()) Returnerar poster med datum inom den innevarande månaden. Om dagens datum är 2/2/2012, returneras poster för februari 2012.
Innehåller ett datum inom den föregående månaden År([Försäljningsdatum])* 12 + Datumdel("m", [Försäljningsdatum]) = År(Datum())* 12 + Datumdel("m", Datum()) - 1 Returnerar poster med datum inom den föregående månaden. Om dagens datum är 2/2/2012, returneras poster för januari 2012.
Innehåller ett datum inom nästa månad År([Försäljningsdatum])* 12 + Datumdel("m", [Försäljningsdatum]) = År(Datum())* 12 + Datumdel("m", Datum()) -1 Returnerar poster med datum inom nästa månad. Om dagens datum är 2/2/2012, returneras poster för mars 2012.
Innehåller ett datum inom de senaste 30 eller 31 dagarna Mellan Datum( ) Och DatumLäggTill("M", -1, Datum( )) Returnerar posterna för en hel månad. Om dagens datum är 2/2/2012, returneras poster för perioden 2 januari 2012 till 2 februari 2012.
Innehåller ett datum inom det innevarande kvartalet År([Försäljningsdatum]) = År(Nu()) Och Datumdel("q", [Försäljningsdatum]) = Datumdel("q", Nu()) Returnerar poster för det innevarande kvartalet. Om dagens datum är 2/2/2012, returneras poster för det första kvartalet 2012.
Innehåller ett datum inom det föregående kvartalet År([Försäljningsdatum])*4+Datumdel("q",[Försäljningsdatum]) = År(Datum())*4+Datumdel("q",Datum())- 1 Returnerar poster för det föregående kvartalet. Om dagens datum är 2/2/2012, returneras poster för det sista kvartalet 2011.
Innehåller ett datum inom nästa kvartal År([Försäljningsdatum])*4+Datumdel("q",[Försäljningsdatum]) = År(Datum())*4+Datumdel("q",Datum())+1 Returnerar poster för nästa kvartal. Om dagens datum är 2/2/2012, returneras poster för det andra kvartalet 2012.
Innehåller ett datum inom det innevarande året År([Försäljningsdatum]) = År(Datum()) Returnerar poster för det innevarande året. Om dagens datum är 2/2/2012, returneras poster för år 2012.
Innehåller ett datum inom det föregående året År([Försäljningsdatum]) = År(Datum()) - 1 Returnerar poster för det föregående året. Om dagens datum är 2/2/2012, returneras poster för år 2011.
Innehåller ett datum inom nästa år År([Försäljningsdatum]) = År(Datum()) -1 Returnerar poster med nästa års datum. Om dagens datum är 2/2/2012, returneras poster för år 2013.
Innehåller ett datum mellan den 1 januari och dagens datum (hittills i år) År([Försäljningsdatum]) = År(Datum()) och Månad([Försäljningsdatum]) <= Månad(Datum()) och Dag([Försäljningsdatum]) <= Dag (Datum()) Returnerar poster med datum mellan den 1 januari i innevarande år och dagens datum. Om dagens datum är 2/2/2012, returneras poster för perioden 1 januari 2012 till 2/2/2012.
Innehåller ett datum som redan har passerat < Datum() Returnerar poster med datum före i dag.
Innehåller ett datum som infaller i framtiden > Datum() Returnerar poster med datum efter i dag.

Exempel som fungerar med ett datum eller datumintervall annat än dagens datum

Om du vill ta med poster som ... Använd det här kriteriet Frågeresultat
Exakt matchar ett datum, t.ex. 2/2/2012 #2/2/2012# Returnerar bara poster med datumet 2 februari 2012.
Inte matchar ett datum, t.ex. 2/2/2012 Icke #2/2/2012# Returnerar poster med ett annat datum än den 2 februari 2012.
Innehåller värden före ett visst datum, t.ex. 2/2/2012 < #2/2/2012# Returnerar poster med ett datum före den 2 februari 2012.
Om du vill visa objekt med ett datum den 2 februari 2012 eller tidigare använder du operatorn <= i stället för operatorn < .
Innehåller värden efter ett visst datum, t.ex. 2/2/2012 > #2/2/2012# Returnerar poster med ett datum efter den 2 februari 2012.
Om du vill visa objekt med ett datum den 2 februari 2012 eller senare använder du operatorn >= i stället för operatorn > .
Innehåller värden i ett datumintervall (mellan två datum) >#2012-02-02# och <#2012-02-04# Returnerar poster med ett datum mellan den 2 februari 2012 och den 4 februari 2012.
Observera: Du kan också använda operatorn Between för att filtrera efter ett intervall med värden, inklusive slutpunkterna. Exempel: Mellan #2012-02-02# och #2012-02-04# är samma som >=#2012-02-02# och <=#2012-02-04#.
Innehåller värden utanför ett intervall <#2012-02-02# eller >#2012-02-04# Returnerar poster med ett datum före den 2 februari 2012 eller efter den 4 februari 2012.
Innehåller ett av två värden, t.ex. 2/2/2012 eller 3/2/2012 #2/2/2012# eller #3/2/2012# Returnerar poster som innehåller datumet 2 februari 2012 eller 3 februari 2012.
Innehåller ett eller flera av många datum I (#1/2/2012#, #1/3/2012#, #1/4/2012#) Returnerar poster som innehåller datumet 1 februari 2012, 1 mars 2012 eller 1 april 2012.
Innehåller ett datum i en viss månad (oavsett år), t.ex. december DatumDel("m", [Försäljningsdatum]) = 12 Returnerar poster som innehåller ett datum i december, oavsett år.
Innehåller ett datum i ett visst kvartal (oavsett år), t.ex. det första kvartalet DatumDel("q", [Kvartal]) = 1 Returnerar poster med ett datum som infaller under det första kvartalet, oavsett år.
Filtrerar fram null-värden (eller värden som saknas) Är Null Returnerar poster där datumet inte har angetts.
Filtrerar fram andra värden än null-värden Är Icke Null Returnerar poster där datumet har angetts.

Exempel som filtrerar efter null- (saknade) eller icke-null-datum

Om du vill ta med poster som ... Använd det här kriteriet Frågeresultat
Filtrerar fram null-värden (eller värden som saknas) Är Null Returnerar poster där datumet inte har angetts.
Filtrerar fram andra värden än null-värden Är Icke Null Returnerar poster där datumet har angetts.

Har du problem med datumvillkor, t.ex. att du inte får det resultat du förväntar dig? Gå till Datumvillkor fungerar inte i min fråga.