При использовании даты в качестве условия в запросе Access может оказаться, что вы не получите ожидаемые результаты.
В приведенном выше запросе условия >=#1/1/2005#<#1/1/2010# не будут работать, так как они недопустимы. Запрос выполняется, но, скорее всего, результаты будут неправильными. Условию требуется оператор "И" между датами. Приведенные ниже условия с оператором "И" будут работать должным образом:
Чтобы упростить работу, вместо знаков "больше чем", "меньше" или "равно" можно использовать "Между" с датами и оператором "И", чтобы выполнить тот же тест следующим образом:
От #1/1/2005# до #01/01/2010#
Обратите внимание на символы # (знаки фунта), окружающие даты? При вводе даты, распознаемой Access, она автоматически будет заключена в символы # .
Примеры условий даты
Здесь показаны некоторые критерии, которые будут работать, и критерии, которые не будут:
Условие |
Возвращает записи с: |
>31.12.10 |
Дата: 1.01.2011 или позже. |
<=01.06.2014 |
Дата на 01.06.2014 г. или раньше. |
8/25/13 |
Единственная дата 25.08.13. |
Между 9/1 и 31/12/15 |
Дата: 9/1 текущего года или позже, а также 31.12.15 или раньше. |
>31.03.13<01.07.13 |
Все даты. В критерии отсутствует оператор "И", поэтому он не фильтрует результаты. |
Между 01.03.10 и 1.01.05 |
Дата: 01.01.05 или позже, а также 01.03.10 или раньше. Не имеет значения, что более поздняя дата вводится в критерии до предыдущей даты. |
Примеры форматов дат, распознаваемых Access
Ниже приведены некоторые из многих форматов дат, которые можно использовать в ячейке Условия :
Формат |
Пример |
м/д/гггг |
10/5/2013 |
м/д |
10/5 Если он не указан, в Access используется текущий год. |
д-ммм-гггг |
5 октября 2013 г. |
m-d-yyyy |
3-7-1990 |
Многие способы использования дат в качестве условий см. в разделе Примеры использования дат в качестве условий запроса в запросах Access .