Příklady použití kalendářních dat jako kritérií v accessových dotazech

Platí pro
Access pro Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Další informace o vytváření dotazů najdete v tématu Úvod do dotazů.

Tady jsou některé běžné příklady použití kalendářních dat v kritériích – od jednoduchých filtrů dat až ke složitějším výpočtům rozsahů kalendářních dat. Některé ze složitějších příkladů ukazují použití datových funkcí Accessu k získání různých části kalendářního data podle potřeby.

V tomto článku

Příklady, kde se aktuální datum používá v kritériích

Chcete získat položky, které Použijte tato kritéria Výsledek dotazu
Obsahují dnešní datum. Date() Vrátí položky s datem shodným s dnešním datem. Pokud je dnešní datum 2. 2. 2012, uvidíte položky, u kterých je pole s datem nastavené na 2. únor 2012.
Obsahují včerejší datum. Date()-1 Vrátí položky se včerejším datem. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky s datem 1. února 2012.
Obsahují zítřejší datum. Date() + 1 Vrátí položky s zítřejším datem. Pokud je dnešní datum 2. února 2012, zobrazí se položky s datem 3. února 2012.
Obsahují datum v aktuálním týdnu. DatePart("ww"; [DatumProdeje]) = DatePart("ww"; Date()) and Year([DatumProdeje]) = Year(Date()) Vrátí položky s datem v aktuálním týdnu. Týden začíná v Accessu v neděli a končí v sobotu.
Obsahují datum v předchozím týdnu. Year([DatumProdeje])* 53 + DatePart("ww"; [DatumProdeje]) = Year(Date())* 53 + DatePart("ww"; Date()) - 1 Vrátí položky s datem v předchozím týdnu. Týden začíná v Accessu v neděli a končí v sobotu.
Obsahují datum v následujícím týdnu. Year([DatumProdeje])* 53+DatePart("ww"; [DatumProdeje]) = Year(Date())* 53+DatePart("ww"; Date()) + 1 Vrátí položky s datem v následujícím týdnu. Týden začíná v Accessu v neděli a končí v sobotu.
Obsahují datum v posledních 7 dnech. Between Date() and Date()-6 Vrátí položky s daty posledních 7 dnů. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky pro období od 24. ledna 2012 do 2. února 2012.
Obsahují datum v aktuálním měsíci. Year([DatumProdeje]) = Year(Now()) And Month([DatumProdeje]) = Month(Now()) Vrátí položky s datem v aktuálním měsíci. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z února 2012.
Obsahují datum v předchozím měsíci. Year([DatumProdeje])* 12 + DatePart("m"; [DatumProdeje]) = Year(Date())* 12 + DatePart("m"; Date()) - 1 Vrátí položky s datem v předchozím měsíci. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z ledna 2012.
Obsahují datum v následujícím měsíci. Year([DatumProdeje])* 12 + DatePart("m"; [DatumProdeje]) = Year(Date())* 12 + DatePart("m"; Date()) + 1 Vrátí položky s datem v následujícím měsíci. Pokud je dnešní datum 2.2.2012, zobrazí se položky z března 2012.
Obsahují datum v posledních 30 nebo 31 dnech. Between Date( ) And DateAdd("M"; -1; Date( )) Vrátí položky za měsíc. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky pro období od 2. ledna 2012 do 2. února 2012.
Obsahují datum v aktuálním čtvrtletí. Year([DatumProdeje]) = Year(Now()) And DatePart("q", [DatumProdeje]) = DatePart("q", Now()) Vrátí položky pro aktuální čtvrtletí. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z prvního čtvrtletí 2012.
Obsahují datum v předchozím čtvrtletí. Year([DatumProdeje])*4+DatePart("q";[DatumProdeje]) = Year(Date())*4+DatePart("q";Date())- 1 Vrátí položky s datem v předchozím čtvrtletí. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z posledního čtvrtletí 2011.
Obsahují datum v následujícím čtvrtletí. Year([DatumProdeje])*4+DatePart("q";[DatumProdeje]) = Year(Date())*4+DatePart("q";Date())+1 Vrátí položky s datem v následujícím čtvrtletí. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z druhého čtvrtletí 2012.
Obsahují datum v aktuálním roce. Year([DatumProdeje]) = Year(Date()) Vrátí položky s datem v aktuálním roce. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky pro rok 2012.
Obsahují datum v předchozím roce. Year([DatumProdeje]) = Year(Date()) - 1 Vrátí položky s datem v předchozím roce. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z roku 2011.
Obsahují datum v následujícím roce. Year([DatumProdeje]) = Year(Date()) + 1 Vrátí položky s datem v následujícím roce. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky z roku 2013.
Obsahují datum v období od 1. ledna do dnešního dne (položky od začátku roku do teď). Year([DatumProdeje]) = Year(Date()) and Month([SalesDate]) <= Month(Date()) and Day([SalesDate]) <= Day (Date()) Vrátí položky s datem od 1. ledna aktuálního roku do dnešního dne. Pokud je dnešní datum 2. 2. 2012, zobrazí se položky pro období od 1. ledna 2012 do 2. 2. 2012.
Obsahují datum v minulosti. < Date() Vrátí položky s datem před dnešním dnem.
Obsahují datum v budoucnosti. > Date() Vrátí položky s datem po dnešním dni.

Příklady, kde se pracuje s jiným datem nebo rozsahem dat než s aktuálním datem

Chcete získat položky, které Použijte tato kritéria Výsledek dotazu
Přesně odpovídají určitému datu, například 2.2.2012. #2.2.2012# Vrátí jenom položky s datem 2. únor 2012.
Neodpovídají určitému datu, například 2.2.2012. Not #2.2.2012# Vrátí položky s datem jiným než 2. únor 2012.
Obsahují hodnoty před určitým datem, například 2.2.2012. < #2/2/2012# Vrátí položky s datem před 2. únorem 2012.
Pokud chcete zobrazit položky s datem 2. února 2012 nebo dříve, použijte < místo operátoru < operátor = .
Obsahují hodnoty po určitém datu, například 2.2.2012. > #2/2/2012# Vrátí položky s datem po 2. únoru 2012.
Pokud chcete zobrazit položky s datem 2. února 2012 nebo později, použijte > místo operátoru > operátor = .
Obsahují hodnoty v určitém rozsahu kalendářních dat (mezi dvěma daty). >#2/2/2012# and <#4.2.2012# Vrátí položky s datem mezi 2. únorem 2012 a 4. únorem 2012.
Poznámka: Pomocí operátoru Between můžete také filtrovat rozsah hodnot, včetně koncových bodů. Například hodnoty Between #2.2.2012# and #4.2.2012# jsou stejné jako >=#2.2.2012# a <=#4.2.2012#.
Obsahují data mimo určitý rozsah kalendářních dat. <#2.2.2012# nebo >#4.2.2012# Vrátí položky s datem před 2. únorem 2012 a taky položky s datem po 4. únoru 2012.
Obsahují některé ze dvou dat, například 2.2.2012 nebo 3.2.2012. #2.2.2012# or #3.2.2012# Vrátí položky s datem 2. únor 2012 a taky položky s datem 3. únor 2012.
Obsahují jedno nebo několik z mnoha kalendářních dat. In (#1.2.2012#, #1.3.2012#, #1.4.2012#) Vrátí položky s datem 1. únor 2012, taky položky s datem 1. březen a taky položky s datem 1. duben 2012.
Obsahují datum v určitém měsíci (bez ohledu na rok), například v prosinci. DatePart("m"; [DatumProdeje]) = 12 Vrátí položky s datem v prosinci libovolného roku.
Obsahují datum v určitém čtvrtletí (bez ohledu na rok), například v prvním čtvrtletí. DatePart("q"; [DatumProdeje]) = 1 Vrátí položky s datem v prvním čtvrtletí libovolného roku.
Obsahují Null (neobsahují žádnou hodnotu). Is Null Vrátí položky bez zadaného data.
Obsahují jakoukoli hodnotu (ne Null). Is Not Null Vrátí položky se zadaným datem.

Příklady, které filtruje data s hodnotou null (chybějící) nebo kalendářní data, která nejsou null

Chcete získat položky, které Použijte tato kritéria Výsledek dotazu
Obsahují Null (neobsahují žádnou hodnotu). Is Null Vrátí položky bez zadaného data.
Obsahují jakoukoli hodnotu (ne Null). Is Not Null Vrátí položky se zadaným datem.

Máte problémy s kritérii založenými na kalendářních datech, jako že třeba nedostáváte očekávané výsledky? Podívejte se na článek Kritéria založená na kalendářních datech v mém dotazu nefungují.