Как сделать запрос с датой

Дата в 1С запросе

Дата в 1С запросе

Дата в запросе в 1С может быть получена:

Текущая дата(и время) в запросе 1С получается только в качестве параметра.

Получение дат

Как передать текущую дату в запрос?

Далее приводятся только тексты запросов.

Как получить начало текущего месяца?

Конец текущего года?

Как получить полдень текущей даты?

Добавим использование функции ДОБАВИТЬКДАТЕ(ДАТА,<ГОД,КВАРТАЛ,МЕСЯЦ,ДЕКАДА,НЕДЕЛЯ,ДЕНЬ>,ЧИСЛО)

Как получить дату без времени (0:00)

Как задать дату-константу в запросе 1С?

Возможно задать дату с точностью до секунды?

А до милисекунды?

Вычисления над датами

Разность в секундах,минутах,часах, днях, неделях получается при использовании функции РАЗНОСТЬДАТ(Дата1,Дата2,<ГОД,КВАРТАЛ,МЕСЯЦ,ДЕКАДА,НЕДЕЛЯ,ДЕНЬ>)

Как получить номер текущего месяца?

ВЫБРАТЬ
МЕСЯЦ(&ТекущаяДата) как ТекущийМесяц,
РАЗНОСТЬДАТ(НАЧАЛОПЕРИОДА(&ТекущаяДата,ГОД),КОНЕЦПЕРИОДА(&ТекущаяДата,МЕСЯЦ),МЕСЯЦ) как ПолныхПрошедшихМесяцев

Как получить день недели?

ВЫБРАТЬ
ДЕНЬНЕДЕЛИ(&ТекущаяДата) КАК НомерДня,
ВЫБОР
КОГДА ДЕНЬНЕДЕЛИ(&ТекущаяДата) = 1
ТОГДА «понедельник»
КОГДА ДЕНЬНЕДЕЛИ(&ТекущаяДата) = 2
ТОГДА «вторник»
КОГДА ДЕНЬНЕДЕЛИ(&ТекущаяДата) = 3
ТОГДА «среда»
КОГДА ДЕНЬНЕДЕЛИ(&ТекущаяДата) = 4
ТОГДА «четверг»
КОГДА ДЕНЬНЕДЕЛИ(&ТекущаяДата) = 5
ТОГДА «пятница»
КОГДА ДЕНЬНЕДЕЛИ(&ТекущаяДата) = 6
ТОГДА «суббота»
ИНАЧЕ «Воскресенье»
КОНЕЦ КАК НаименованиеДняНедели

Сколько осталось до Нового года?

ВЫБРАТЬ
&ТекущаяДата > ДАТАВРЕМЯ(2017, 1, 1) КАК НовыйГодНаступил,
ВЫБОР
КОГДА &ТекущаяДата > ДАТАВРЕМЯ(2017, 1, 1)
ТОГДА «Да, наступил»
ИНАЧЕ «Нет, не наступил»
КОНЕЦ КАК Ответ,
РАЗНОСТЬДАТ(&ТекущаяДата,ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2017, 1, 1),СЕКУНДА,-1),ДЕНЬ) как ОсталосьДней,
РАЗНОСТЬДАТ(&ТекущаяДата,КОНЕЦПЕРИОДА(&ТекущаяДата,ДЕНЬ),ЧАС) как ОсталосьЧасов,
РАЗНОСТЬДАТ(&ТекущаяДата,КОНЕЦПЕРИОДА(&ТекущаяДата,ЧАС),Минута) как ОсталосьМинут,
РАЗНОСТЬДАТ(&ТекущаяДата,КОНЕЦПЕРИОДА(&ТекущаяДата,Минута),Секунда) как ОсталосьСекунд

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датойЧто еще следует знать про дату в запросах?

Дата в запросах может фигурировать не только в полях выборки, и вычислениях, но также передаваться, как параметры виртуальных таблиц.

Допустимо задание дат-констант и использование параметров, также обработка их выше приведенными функциями.

Но нельзя дату передать в параметры виртуальных таблиц из полученных ранее в этом запросе полей выборки.

Сортировка даты в запросе производится в рамках секунды.

Момент времени документа не является датой, он сортирует более глубже, чем дата документа, т.е. при наличии документов в одну секунду времени, сортировка по дате производится в недопустимом порядке: например в виде представления. Используйте для этого момент времени.

Внешнее представление даты определяется представлением операционной системы, управлять из запроса, а также приводить в строковое представление в классическом запросе невозможно в отличии от СКД, где возможна пост-обработка и условное оформление.

Допускается применение функции МАКСИМУМ(),МИНИМУМ() к дата в запросе, как в группировке так и в итогах запроса.

Ошибка «неверные параметры» возникает в случае, когда вместо даты передается null, число или что-то иное.

Преобразовать строку в дату в запросе

Специальных функций нет. но возможно преобразование через функцию ПОДСТРОКА и конструкцию ВЫБОР КОГДА

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Расчеты.Параметр,
Расчеты.ВерныйПараметр,
ВЫБОР
КОГДА Расчеты.символ1 = «2»
ТОГДА 2
КОГДА Расчеты.символ1 = «1»
ТОГДА 1
ИНАЧЕ 0
КОНЕЦ * 1000 + ВЫБОР
КОГДА Расчеты.символ2 = «0»
ТОГДА 0
КОГДА Расчеты.символ2 = «1»
ТОГДА 1
КОГДА Расчеты.символ2 = «2»
ТОГДА 2
КОГДА Расчеты.символ2 = «3»
ТОГДА 3
КОГДА Расчеты.символ2 = «4»
ТОГДА 4
КОГДА Расчеты.символ2 = «5»
ТОГДА 5
КОГДА Расчеты.символ2 = «6»
ТОГДА 6
КОГДА Расчеты.символ2 = «7»
ТОГДА 7
КОГДА Расчеты.символ2 = «8»
ТОГДА 8
ИНАЧЕ 9
КОНЕЦ * 100 + ВЫБОР
КОГДА Расчеты.символ3 = «0»
ТОГДА 0
КОГДА Расчеты.символ3 = «1»
ТОГДА 1
КОГДА Расчеты.символ3 = «2»
ТОГДА 2
КОГДА Расчеты.символ3 = «3»
ТОГДА 3
КОГДА Расчеты.символ3 = «4»
ТОГДА 4
КОГДА Расчеты.символ3 = «5»
ТОГДА 5
КОГДА Расчеты.символ3 = «6»
ТОГДА 6
КОГДА Расчеты.символ3 = «7»
ТОГДА 7
КОГДА Расчеты.символ3 = «8»
ТОГДА 8
ИНАЧЕ 9
КОНЕЦ * 10 + ВЫБОР
КОГДА Расчеты.символ4 = «0»
ТОГДА 0
КОГДА Расчеты.символ4 = «1»
ТОГДА 1
КОГДА Расчеты.символ4 = «2»
ТОГДА 2
КОГДА Расчеты.символ4 = «3»
ТОГДА 3
КОГДА Расчеты.символ4 = «4»
ТОГДА 4
КОГДА Расчеты.символ4 = «5»
ТОГДА 5
КОГДА Расчеты.символ4 = «6»
ТОГДА 6
КОГДА Расчеты.символ4 = «7»
ТОГДА 7
КОГДА Расчеты.символ4 = «8»
ТОГДА 8
ИНАЧЕ 9
КОНЕЦ КАК НомерГода
ПОМЕСТИТЬ Цифры
ИЗ
Расчеты КАК Расчеты
;

Реклама — искусство превращения полуправды в полную ложь.

Источник

Как сделать запрос с датой

Функция DateAdd в запросах Access

Всем привет, сегодня разбираем функцию DateAdd в запросах Access. Если вы не знаете, как работает функция DateAdd в базе данных Microsoft Access, то дочитайте данную статью до конца.
На простых запросах мы разберем принцип работы встроенной функции DateAdd. Функция DateAdd в запросах Access применяется для добавления (вычитания) указанного интервала времени к дате.

Функция DateAdd в запросах Access

Синтаксис: DateAdd («интервал», число, дата).

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Функция DateAdd в запросах Access содержит 3 аргумента. Все аргументы обязательные.
1 аргумент — ИНТЕРВАЛ. Интервал это тот период времени, который необходимо добавить (вычесть) к требуемой дате.
2 аргумент — ЧИСЛО. Это то количество заданных интервалов, которое будет добавлено к дате.
3 аргумент — ДАТА. Дата, к которой добавляются интервалы с помощью функции DateAdd.
Все параметры первого аргумента — интервала представлены ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Приведем простой пример и посмотрим как работает функция DateAdd в запросах Access.
Создадим таблицу, которая будет состоять из 2 полей: «начальная дата» и «начальное время». Оба поля имеют тип «Дата/Время». Поле «начальная дата» — формат «краткий формат даты», «начальное время» — формат «краткий формат времени».

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Заполним таблицу произвольными данными.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Далее создадим простой запрос, где к полю «начальная дата» добавим 10 дней.
Добавим в запрос поле «начальная дата». Добавим новое вычисляемое поле:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Данный пример демонстрирует основной принцип работы функции DateAdd в запросах Access: к дате прибавляется 10 дней.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Рассмотрим следующий пример, где используется функция DateAdd в запросах Access.
Добавим к дате 10 месяцев. для этого достаточно поменять значение интервала с «d» на «m».

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Рассмотрим следующий пример, где используется функция DateAdd в запросах Access.
Добавим к дате 10 лет. для этого достаточно поменять значение интервала с «m» на «yyyy».

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Рассмотрим следующий пример, где используется функция DateAdd в запросах Access.
Добавим к дате 1 квартал. для этого достаточно поменять значение интервала с «yyyy» на «q».

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Функция DateAdd в запросах Access не только прибавляет указанный интервал к дате, но и вычитает указанный интервал из даты.
Пример вычитания из даты 10 лет представлен ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Хотите больше примеров, где разбирается функция DateAdd в запросах Access? Например как можно использовать DateAdd в формах Access? Переходите по ССЫЛКЕ.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Если вам нужна готовая база данных Access, то ознакомьтесь со списком представленным ЗДЕСЬ.

Источник

Дата в запросах 1С: текущая дата, пустое значение, произвольная дата

При написании запросов на языке 1С довольно часть встречается необходимость работы с переменными типа «Дата». В данной статье мы рассмотрим основные приемы — передача текущей даты, проверка на пустое значение, произвольная дата.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Текущая дата

При написании запросов зачастую необходимо сравнивать данные с текущей датой. Во встроенном языке 1С есть функция ТекущаяДата(). Она позволяет определить текущее время и дату на компьютере. Для произведения операций с текущей датой необходимо передавать в запрос значение этой функции в качестве параметра.

Ниже представлен запрос, выбирающий все файлы, присоединенные к авансовым отчетам с датой создания до настоящего момента:

ПримерЗапроса = Новый Запрос;
ПримерЗапроса.Текст =«
|ВЫБРАТЬ
| АвансовыйОтчетПрисоединенныеФайлы.Ссылка
|ИЗ
| Справочник.АвансовыйОтчетПрисоединенныеФайлыКАК АвансовыйОтчетПрисоединенныеФайлы
|ГДЕ
| АвансовыйОтчетПрисоединенныеФайлы.Дата Произвольная дата

Рассмотренная выше функция позволяет сравнивать и, следовательно, производить отбор по любому периоду. Такой способ позволяет задать в запросе жесткий отбор без использования дополнительных параметров.

Обратите внимание, что используя эту функцию в примере выше, в качестве входных параметров мы передавали только три числа (год, месяц, день). Последние три (час, минута, секунда) не являются обязательными и при отсутствии заменяются на «0», то есть начало дня.

В рамках данного примера будут получены все файлы, присоединенные к авансовым отчетам до конца прошлого 2016 года. В связи с этим мы укажем час, минуту и секунду, чтобы сравнивать моментом времени «31 декабря 2016 г 23:59:59».

ВЫБРАТЬ
АвансовыйОтчетПрисоединенныеФайлы.Ссылка
ИЗ
Справочник.АвансовыйОтчетПрисоединенныеФайлы КАК АвансовыйОтчетПрисоединенныеФайлы
ГДЕ
АвансовыйОтчетПрисоединенныеФайлы.Дата Пустая дата

Осуществить проверку переменной на то, содержит ли она в себе незаполненную дату проще всего обычным сравнением. В этом примере мы, используя запрос, выберем все поступления денежных средств на р/с, у которых не заполнена входящая дата.

ВЫБРАТЬ
ПоступлениеНаРасчетныйСчет.Ссылка
ИЗ
Документ.ПоступлениеНаРасчетныйСчет КАК ПоступлениеНаРасчетныйСчет
ГДЕ
ПоступлениеНаРасчетныйСчет.ДатаВходящегоДокумента = ДАТАВРЕМЯ(1, 1, 1)

Источник

Как сделать запрос с датой

Функция DateDiff в запросах Access

Всем привет, сегодня разбираем функцию DateDiff в запросах Access. Если вы не знаете, как работает функция DateDiff в базе данных Microsoft Access, то дочитайте данную статью до конца.
На простых запросах мы разберем принцип работы встроенной функции DateDiff. Функция DateDiff в запросах Access необходима для вычисления определенного интервала (периода времени) между двумя датами.

Функция DateDiff в запросах Access

Синтаксис: DateDiff («Интервал»; Дата1; Дата2; [Первый день недели]; [Первая неделя года]).

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Функция DateDiff имеет 5 аргументов: 3 обязательных и 2 необязательных.
1 аргумент — это интервал — это выражение, которое определяет интервал между двумя датами
2 и 3 аргументы — это те даты, с которыми мы работаем
4 аргумент (необязатеьный) — первый день недели.
5 аргумент (необязательный) — первая неделя года.
Все параметры первого аргумента — интервала представлены ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как вы видите, значения интервала такие же как и у функции DATEADD и DATEPART.
Значения 4 параметра функции DateDiff представлены ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Так как первый день недели — понедельник, то значение данного параметра будет «2».
Значения 5 параметра функции DateDiff представлены ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Так первая неделя года та, на которую приходится 1 января, данный параметр можно не указывать.
Приведем простой пример и посмотрим как работает функция DateDiff в запросах Access.
Создадим таблицу, которая будет состоять из 2 полей: «Дата 1» и «Дата 2», оба поля имеют тип «Дата/Время», формат — «краткий формат даты».

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Заполним данную таблицу произвольными датами.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Давайте создадим запрос, который вычислит какое количество лет приходится на промежуток между двумя датами.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Результат работы запроса представлен ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Приведем второй пример и посмотрим как работает функция DateDiff в запросах Access.
Давайте создадим запрос, который вычислит какое количество дней приходится на промежуток между двумя датами.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Результат работы запроса представлен ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Приведем третий пример и посмотрим как работает функция DateDiff в запросах Access.
Давайте создадим запрос, который вычислит какое количество недель приходится на промежуток между двумя датами.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Результат работы запроса представлен ниже:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Хотите больше примеров, где разбирается функция DatePart в запросах Access? Например как можно использовать DateDiff в формах Access? Переходите по ССЫЛКЕ.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Если вам нужна готовая база данных Access, то ознакомьтесь со списком представленным ЗДЕСЬ.

Источник

Примеры условий запроса

Используя условия запроса, вы можете находить в базе данных Access определенные элементы. Если элемент соответствует всем введенным условиям, он отобразится в результатах запроса.

Чтобы добавить условие в запрос Access, откройте этот запрос в конструкторе. Затем определите поля (столбцы), на которые распространяется данное условие. Если нужное поле в бланке запроса отсутствует, добавьте его с помощью двойного щелчка. Затем в строке Условия введите для него условие. Дополнительные сведения см. в статье Общие сведения о запросах.

Условие запроса — это выражение, которое Access сравнивает со значениями в полях запроса, чтобы определить, следует ли включать в результат записи, содержащие то или иное значение. Например, = «Воронеж» — это выражение, которое Access сравнивает со значениями в текстовом поле запроса. Если значение этого поля в определенной записи равно «Воронеж», Access включает ее в результаты запроса.

Рассмотрим несколько примеров часто используемых условий, на основе которых вы можете создавать собственные условия. Примеры группируются по типам данных.

В этом разделе

Общие сведения об условиях запроса

Условие похоже на формулу — это строка, которая может включать ссылки на поля, операторы и константы. В Access условия запроса также называются выражениями.

В следующей таблице показаны примеры условий и описано, как они работают.

>25 and значение больше 25 и меньше 50.

DateDiff («гггг», [ДатаРождения], Date()) > 30

Это условие применяется к полю «Дата/время», такому как «ДатаРождения». В результаты запроса включаются только записи, в которых количество лет между датой рождения человека и текущей датой больше 30.

Это условие можно применять к полям любого типа для отображения записей, в которых значение поля равно NULL.

Как видите, условия могут значительно отличаться друг от друга в зависимости от типа данных в поле, к которому они применяются, и от ваших требований. Некоторые условия простые и включают только основные операторы и константы. Другие условия сложные: они содержат функции, специальные операторы и ссылки на поля.

В этой статье перечислено несколько часто используемых условий для различных типов данных. Если примеры не отвечают вашим потребностям, возможно, вам придется задать собственные условия. Для этого необходимо сначала ознакомиться с полным списком функций, операторов и специальных знаков, а также с синтаксисом выражений, которые ссылаются на поля и литералы.

Узнаем, где и как можно добавлять условия. Чтобы добавить условия в запрос, необходимо открыть его в Конструкторе. После этого следует определить поля, для которых вы хотите задать условия. Если поля еще нет на бланке запроса, добавьте его, перетащив его из окна конструктора запросов на сетку полей или дважды щелкнув поле (при этом поле автоматически добавляется в следующий пустой столбец в сетке). Наконец, введите условия в строку Условия.

Условия, заданные для разных полей в строке Условия, объединяются с помощью оператора AND. Другими словами, условия, заданные в полях «Город» и «ДатаРождения», интерпретируются следующим образом:

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

1. Поля «Город» и «ДатаРождения» включают условия.

2. Этому условию соответствуют только записи, в которых поле «Город» имеет значение «Воронеж».

3. Этому условию соответствуют только записи людей, которым не менее 40 лет.

4. В результат будут включены только те записи, которые соответствуют обоим условиям.

Что делать, если требуется, чтобы выполнялось только одно из этих условий? Другими словами, как можно ввести альтернативные условия?

Если у вас есть альтернативные условия, то есть два набора независимых условий, из которых должен выполняться только один, используйте строки Условие отбора и Или на бланке.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

1. 1. Условие «Город» указывается в строке «Условие отбора».

2. 2. Условие «ДатаРождения» указывается в строке «или».

Условия, заданные в строках Условие отбора и или, объединяются с помощью оператора OR, как показано ниже.

Город = «Чикаго» OR ДатаРождения или.

Прежде чем приступить к изучению примеров, обратите внимание на следующее:

Если условие является временным или часто меняется, можно фильтровать результаты запроса, вместо того чтобы постоянно менять условия. Фильтр — это временное условие, которое изменяет результат запроса, не изменяя его структуру. Дополнительные сведения о фильтрах см. в статье Применение фильтра для просмотра отдельных записей в базе данных Access.

Если используются одни и те же поля условий, но часто меняются значения, которые вам интересны, вы можете создать запрос с параметрами. Такой запрос предлагает указать значения полей, а затем использует их для создания условий. Дополнительные сведения о запросах с параметрами см. в статье Использование параметров в запросах и отчетах.

Условия для текстовых полей, полей Memo и полей гиперссылок

Примечание: Начиная с версии Access 2013, текстовые поля носят название Краткий текст, а поля Memo — Длинный текст.

Следующие примеры относятся к полю «СтранаРегион», основанном на таблице, в которой хранится информация о контактах. Условие задается в строке Условие отбора поля на бланке.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Условие, заданное для поля «Гиперссылка», по умолчанию применяется к отображаемому тексту, который указан в поле. Чтобы задать условия для конечного URL-адреса, используйте выражение HyperlinkPart. У него следующий синтаксис: HyperlinkPart([Таблица1].[Поле1],1) = «http://www.microsoft.com/», где «Таблица1» — это имя таблицы, содержащей поле гиперссылки, «Поле1» — это само поле гиперссылки, а «http://www.microsoft.com» — это URL-адрес, который вы хотите найти.

Чтобы добавить записи, которые.

Используйте это условие

Точно соответствуют определенному значению, например «Китай»

Возвращает записи, в которых поле «СтранаРегион» содержит значение «Китай».

Не соответствуют определенному значению, например «Мексика»

Возвращает записи, в которых значением поля «СтранаРегион» не является «Мексика».

Начинаются с заданной строки символов, например «С»

Возвращает записи всех стран или регионов, названия которых начинаются с буквы «С», таких как Словакия и США.

Примечание: Символ «звездочка» ( *) в выражении обозначает любую строку символов. Он также называется подстановочным знаком. Список таких знаков см. в статье Справочные сведения о подстановочных знаках в приложении Access.

Не начинаются с заданной строки символов, например «С»

Возвращает записи всех стран или регионов, названия которых не начинаются с буквы «С».

Содержат заданную строку, например «Корея»

Возвращает записи всех стран или регионов, названия которых содержат строку «Корея».

Не содержат заданную строку, например «Корея»

Возвращает записи всех стран или регионов, названия которых не содержат строку «Корея».

Заканчиваются заданной строкой, например «ина»

Возвращает записи всех стран или регионов, названия которых заканчиваются на «ина», таких как «Украина» и «Аргентина».

Не заканчиваются заданной строкой, например «ина»

Возвращает записи всех стран или регионов, названия которых не заканчиваются на «ина», как в названиях «Украина» и «Аргентина».

Содержат пустые значения (или значения отсутствуют)

Возвращает записи, в которых это поле не содержит значения.

Не содержат пустых значений

Возвращает записи, в которых это поле содержит значение.

Содержат пустую строку

Возвращает записи, в которых поле имеет пустое значение (но не значение NULL). Например, записи о продажах другому отделу могут содержать пустое значение в поле «СтранаРегион».

Не содержат пустых строк

Возвращает записи, в которых поле «СтранаРегион» имеет непустое значение.

Содержит нулевые значения или пустые строки

Возвращает записи, в которых значение в поле отсутствует или является пустым.

Ненулевые и непустые

Is Not Null And Not «»

Возвращает записи, в которых поле «СтранаРегион» имеет непустое значение, не равное NULL.

При сортировке в алфавитном порядке следуют за определенным значением, например «Мексика»

Возвращает записи с названиями стран и регионов, начиная с Мексики и до конца алфавита.

Входят в определенный диапазон, например от А до Г

Возвращает страны и регионы, названия которых начинается с букв от «А» до «Г».

Совпадают с одним из двух значений, например «Словакия» или «США»

Возвращает записи для США и Словакии.

Содержат одно из значений, указанных в списке

In(«Франция», «Китай», «Германия», «Япония»)

Возвращает записи всех стран или регионов, указанных в списке.

Содержат определенные знаки в заданном месте значения поля

Right([СтранаРегион], 1) = «а»

Возвращает записи всех стран или регионов, названия которых заканчиваются на букву «а».

Соответствуют заданной длине

Возвращает записи стран или регионов, длина названия которых превышает 10 символов.

Соответствуют заданному шаблону

Возвращает записи стран или регионов, названия которых состоят из пяти символов и начинаются с «Лив», например Ливия и Ливан.

Условия для числовых полей, полей с денежными значениями и полей счетчиков

Следующие примеры относятся к полю «ЦенаЗаЕдиницу», основанном на таблице, в которой хранится информация о товарах. Условие задается в строке Условие отбора поля на бланке запроса.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Чтобы добавить записи, которые.

Используйте это условие

Точно соответствуют определенному значению, например 1000

Возвращает записи, в которых цена за единицу товара составляет 1000 ₽.

Не соответствуют значению, например 10 000

Возвращает записи, в которых цена за единицу товара не равна 10 000 ₽.

Содержат значение, которое меньше заданного, например 1000

Возвращает записи, в которых цена товара больше 999,99 ₽ (>999,99). Второе выражение отображает записи, цена в которых не меньше 999,99 ₽.

Содержат одно из двух значений, например 200 или 250

Возвращает записи, в которых цена товара равна 200 или 250 ₽.

Содержат значение, которое входит в определенный диапазон

Возвращает записи, в которых цена товара не находится в диапазоне от 500 до 1000 ₽.

Содержит одно из заданных значений

Возвращает записи, в которых цена товара равна 200, 250 или 300 ₽.

Содержат значение, которое заканчивается на заданные цифры

Возвращает записи товаров, цена которых заканчивается на 4,99, например 4,99 ₽, 14,99 ₽, 24,99 ₽ и т. д.

Содержат пустые значения (или значения отсутствуют)

Возвращает записи, для которых не введено значение в поле «ЦенаЗаЕдиницу».

Содержат непустые значения

Возвращает записи, в поле «ЦенаЗаЕдиницу» которых указано значение.

Условия для полей «Дата/время»

Следующие примеры относятся к полю «ДатаЗаказа», основанном на таблице, в которой хранится информация о заказах. Условие задается в строке Условие отбора поля на бланке запроса.

Как сделать запрос с датой. Смотреть фото Как сделать запрос с датой. Смотреть картинку Как сделать запрос с датой. Картинка про Как сделать запрос с датой. Фото Как сделать запрос с датой

Используйте этот критерий

Точно соответствуют значению, например 02.02.2006

Возвращает записи транзакций, выполненных 2 февраля 2006 г. Обязательно ставьте знаки # до и после значений даты, чтобы Access мог отличить значения даты от текстовых строк.

Не соответствуют значению, такому как 02.02.2006

Возвращает записи транзакций, выполненных в любой день, кроме 2 февраля 2006 г.

Содержат значения, которые предшествуют определенной дате, например 02.02.2006

Возвращает записи транзакций, выполненных после 2 февраля 2006 г.

Чтобы просмотреть транзакции, выполненные в определенную дату или после нее, воспользуйтесь оператором >= вместо оператора >.

Содержат значения, которые входят в определенный диапазон дат

>#02.02.2006# and Between. Например, выражение Between #02.02.2006# and #04.02.2006# идентично выражению >=#02.02.2006# and #04.02.2006#

Возвращает записи транзакций, выполненных до 2 февраля 2006 г. или после 4 февраля 2006 г.

Содержат одно из двух заданных значений, например 02.02.2006 или 03.02.2006

#02.02.2006# or #03.02.2006#

Возвращает записи транзакций, выполненных 2 или 3 февраля 2006 г.

Содержит одно из нескольких значений

In (#01.02.2006#, #01.03.2006#, #01.04.2006#)

Возвращает записи транзакций, выполненных 1 февраля 2006 г., 1 марта 2006 г. или 1 апреля 2006 г.

Содержат дату, которая выпадает на определенный месяц (вне зависимости от года), например декабрь

DatePart(«m»; [ДатаПродажи]) = 12

Возвращает записи транзакций, выполненных в декабре любого года.

Содержат дату, которая выпадает на определенный квартал (вне зависимости от года), например первый

DatePart(«q»; [ДатаПродажи]) = 1

Возвращает записи транзакций, выполненных в первом квартале любого года.

Содержат текущую дату

Возвращает записи транзакций, выполненных сегодня. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи, в поле «ДатаЗаказа» которых указано 2 февраля 2006 г.

Содержат вчерашнюю дату

Возвращает записи транзакций, выполненных вчера. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за 1 февраля 2006 г.

Содержат завтрашнюю дату

Возвращает записи транзакций, которые будут выполнены завтра. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за 3 февраля 2006 г.

Содержат даты, которые выпадают на текущую неделю

DatePart(«ww»; [ДатаПродажи]) = DatePart(«ww»; Date()) and Year([ДатаПродажи]) = Year(Date())

Возвращает записи транзакций, выполненных за текущую неделю. Неделя начинается в воскресенье и заканчивается в субботу.

Содержат даты, которые выпадают на прошлую неделю

Возвращает записи транзакций, выполненных за прошлую неделю. Неделя начинается в воскресенье и заканчивается в субботу.

Содержат даты, которые выпадают на следующую неделю

Year([ДатаПродажи])* 53+DatePart(«ww»; [ДатаПродажи]) = Year(Date())* 53+DatePart(«ww»; Date()) + 1

Возвращает записи транзакций, которые будут выполнены на следующей неделе. Неделя начинается в воскресенье и заканчивается в субботу.

Содержат дату, которая выпадает на последние 7 дней

Between Date() and Date()-6

Возвращает записи транзакций, выполненных за последние 7 дней. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за период с 24 января 2006 г. по 2 февраля 2006 г.

Содержат дату, которая выпадает на текущий месяц

Year([ДатаПродажи]) = Year(Now()) And Month([ДатаПродажи]) = Month(Now())

Возвращает записи за текущий месяц. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за февраль 2006 г.

Содержат дату, которая выпадает на прошлый месяц

Возвращает записи за прошлый месяц. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за январь 2006 г.

Содержат дату, которая выпадает на следующий месяц

Year([ДатаПродажи])* 12 + DatePart(«m»; [ДатаПродажи]) = Year(Date())* 12 + DatePart(«m»; Date()) + 1

Возвращает записи за следующий месяц. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за март 2006 г.

Содержат дату, которая выпадает на последние 30 дней или 31 день

Записи о продажах за месяц. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за период со 2 января 2006 г. по 2 февраля 2006 г.

Содержат дату, которая выпадает на текущий квартал

Year([ДатаПродажи]) = Year(Now()) And DatePart(«q»; Date()) = DatePart(«q»; Now())

Возвращает записи за текущий квартал. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за первый квартал 2006 г.

Содержат дату, которая выпадает на прошлый квартал

Year([ДатаПродажи])*4+DatePart(«q»;[ДатаПродажи]) = Year(Date())*4+DatePart(«q»;Date())- 1

Возвращает записи за прошлый квартал. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за последний квартал 2005 г.

Содержат дату, которая выпадает на следующий квартал

Возвращает записи за следующий квартал. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за второй квартал 2006 г.

Содержат дату, которая выпадает на текущий год

Возвращает записи за текущий год. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за 2006 г.

Содержат дату, которая выпадает на прошлый год

Возвращает записи транзакций, выполненных в прошлом году. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за 2005 г.

Содержат дату, которая выпадает на следующий год

Year([ДатаПродажи]) = Year(Date()) + 1

Возвращает записи транзакций, которые будут выполнены в следующем году. Если сегодняшняя дата — 02.02.2006 г., вы увидите записи за 2007 г.

Содержат дату, которая приходится на период с 1 января до текущей даты (записи с начала года до настоящего момента)

Year([ДатаПродажи]) = Year(Date()) and Month([ДатаПродажи]) Date()

Возвращает записи транзакций, которые будут выполнены после сегодняшнего дня.

Фильтр пустых (или отсутствующих) значений

Возвращает записи, в которых не указана дата транзакции.

Фильтр непустых значений

Возвращает записи, в которых указана дата транзакции.

Условия для полей «Да/Нет»

В качестве примера, в таблице «Клиенты» есть логическое поле «Активность», которое показывает текущую активность учетной записи клиента. В таблице отображается, как вычисляются значения, введенные в строке условий логического поля.

Проверено для значения «Нет». После ввода значение 0 изменяется на «Ложь» в строке условий.

Нет результатов, если это единственное значение условия в поле

Любая строка символов, отличная от «Да», «Нет», «Истина» или «Ложь»

Не удается выполнить запрос из-за ошибки несоответствия типов данных.

Условия для других полей

Вложения. В строке Условие отбора введите Is Null, чтобы включить записи, которые не содержат вложений. Введите Is Not Null, чтобы включить записи с вложениями.

Поля подстановки. Существует два типа полей подстановки: те, которые подставляют значения из существующего источника данных (с помощью внешнего ключа), и те, которые основаны на списке значений, заданном при их создании.

Поля подстановки, основанные на списке значений, имеют текстовый тип данных и принимают такие же условия, как другие текстовые поля.

Условия, которые можно использовать в поле подстановки, основанном на значениях из существующего источника данных, зависят от типа данных внешнего ключа, а не типа подставляемых данных. Например, у вас может быть поле подстановки, которое отображает имя сотрудника, но использует внешний ключ с числовым типом данных. Так как в поле хранится число, а не текст, вы можете использовать условия, которые подходят для чисел, такие как >2.

Если вы не знаете тип данных внешнего ключа, можно просмотреть исходную таблицу в Конструкторе, чтобы определить его. Для этого:

Найдите исходную таблицу в области навигации.

Откройте таблицу в Конструкторе, сделав одно из следующего:

Щелкните таблицу и нажмите клавиши CTRL+ВВОД.

Щелкните таблицу правой кнопкой мыши и выберите пункт Конструктор.

Тип данных для каждого поля указан в столбце Тип данных на бланке таблицы.

Многозначные поля. Данные в многозначных полях хранятся как строки скрытой таблицы, которые Access создает и заполняет для представления поля. В Конструкторе запроса они представлены в списке полей с помощью расширяемого поля. Чтобы задать условия для многозначного поля, необходимо указать их для одной строки скрытой таблицы. Для этого:

Создайте запрос, содержащий многозначное поле, и откройте его в Конструкторе.

Перетащите многозначное поле и поле его значения в различные столбцы на бланке. Если вы хотите, чтобы в результатах выводилось только полное многозначное поле, снимите флажок Показать для поля одного значения.

Введите в поле Условие отбора для поля с одним значением условия, подходящие для типа данных, который представляют собой значения.

Каждое значение в многозначном поле будет оцениваться по отдельности на основе указанных условий. Например, допустим, что в многозначном поле хранится список чисел. Если указать условия >5 AND и одно значение меньше 3.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *