Как сделать условие на значение в access?

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

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

Примечание

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

Проверка допустимости числовых значений

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

Таблица 4.4. Условия на значение для чисел

Сравнение

Пример условия

Описание

Меньше чем

Значение должно быть больше 0

Не равно

< >42

Значение может быть любым, но не равным 42

Меньше или равно

Jan 30, 2007 (> 30 Янв, 2007), программа Access приходит в крайнее замешательство, т. к. не понимает, что текст (Jan 30, 2 007) предназначается для представления даты. Точно так же, если вы проверяете условие >1/30/07, Access предполагает, что числа справа от знака сравнения — часть выражения с последовательными операциями деления.

Для решения этой проблемы используйте универсальную синтаксическую форму представления дат программы Access, которая выглядит следующим образом: #1/30/2007#

В универсальную синтаксическую запись для представления дат компоненты включаются в порядке месяц/день/год и обрамляются с обеих сторон символами #. С помощью этого синтаксиса вы можете использовать условие, такое как >#1/30/2007#, требующее, чтобы

вводимая дата была больше (наступала позже), чем January 30, 2007 (30 января 2007 January 31, 2007 отвечает данному требованию, а любая дата в 2006 г. — нет.

Универсальная синтаксическая запись может включать и время, например: #1/30/2007   5:30РМ#

Примечание

При сравнении двух дат программа Access принимает во внимание сведения о времени. Дата #1/30/2007# не содержит данных о времени, поэтому она интерпретируется как наступившая в самую первую секунду суток. В результате Access считает, что значение #1/30/2007  8:00  АМ# больше, поскольку наступает на 8 часов позже.

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

¦  Date ( ) — вычисляет текущую дату (без какой-либо информации о времени, поэтому она
вычисляется как первая секунда текущего дня);

¦  Now ( ) — вычисляет текущий момент времени, включая дату и время.

Примечание

Функция — это встроенная процедура, выполняющая какую-либо задачу, например считывание текущей даты с компьютерных часов. В разд. «Функции для обработки дат» главы 7 вы познакомитесь со многими функциями обработки дат, которые позволят вам выполнить более сложные задачи, например, определять день недели для конкретной даты.

В табл. 4.5 приведено несколько примеров.

Таблица 4.5. Условия на значения для дат

Сравнение

Пример условия

Описание

Меньше чем

#1/30/2007   5:30   РМ#

Любая дата после 30 января 2007 г., или 30 января 2007 г. после 17:30

Меньше или равна

=#1/30/2007#

30 января 2007 г. или любая более поздняя дата

Больше текущей даты

>Date()

Сегодня или более поздняя дата

Меньше текущей даты

Now()

Сегодня после текущего времени или любая дата в будущем

Меньше текущей даты (и времени)

1000 Or < -1000

Создание условия на значение для таблицы

Условия на значения всегда применяются к отдельному полю. Но проектировщики БД часто нуждаются в средствах сравнения значений разных полей. Предположим, что у вас есть таблица Orders (заказы), в которой регистрируются покупки в вашем магазине по продаже фирменных носков с монограммой. В таблице Orders вы используете два поля: DateOrdered (дата заказа) и DateShipped (дата доставки). Для того чтобы все было как следует, необходимо, чтобы дата из поля DateOrdered была более ранней, чем дата из поля DateShipped. Помимо всего прочего, как доставить изделие, прежде чем кто-то его закажет?

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

Далее приведен алгоритм создания условия на значение для таблицы.

1.   В Конструкторе выберите на ленте Работа с таблицами | Конструктор > Показать или скрыть > Страница свойств (Table Tools | Design > Show/Hide > Property Sheet).

Справа в окне программы появляется страница с дополнительными параметрами (рис. 4.16).

Примечание

Для таблицы можно создать только одно правило верификации. Это ограничение может показаться проблемой, но ее легко обойти с помощью ключевого слова And (см. разд. «Комбинирование условий на значения» ранее в этой главе) и объединения того количества условий, которое вам нужно. Правило верификации может быть трудным для чтения, но при этом работать без сбоев.

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

2.   На вкладке Свойства таблицы задайте Условие на значение.

В условии на значение для таблицы можно использовать все уже известные вам ключевые слова. Обычно в условии для таблицы сравнивается несколько полей. Условие на значение < гарантирует, что в ноле DateOrdered более ранняя дата, чем используемая в поле DateShipped.

При ссылке на поле в условии на значение для таблицы имена полей следует заключать в квадратные скобки. Таким образом, программа Access может установить разницу межу полями и функциями (например, функцией Date ( ), о которой вы узнали в разд. «Задание значений по умолчанию «далее в этой главе).

3.   Задайте текст Сообщения об ошибке.

Это сообщение об ошибке выводится на экран, если условие не выполняется. Оно аналогично сообщению об ошибке для условия на значение поля.

Когда вставляется новая запись программа Access сначала проверяет условия на значения поля. Если данные успешно проходят проверку (и у них правильные типы), Access проверяет условие на значение для таблицы.

Подсказка

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

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Sortiere nach

Как создать ЗАПРОС С УСЛОВИЕМ в базе данных MS ACCESSУроки по Microsoft Access

Vor year

Если вы не знаете, как создаются запросы с условием в базе данных Microsoft Access, то посмотрите это видео. Продолж…

Как задать условия для ТЕКСТОВЫХ полей в запросах MS ACCESSУроки по Microsoft Access

Vor year

Если вы не знаете, как создаются запросы в базе данных Microsoft Access, то посмотрите это видео. Продолжаем работат…

Функция IIF в запросах Access (Условие «ЕСЛИ-ТО»)Уроки по Microsoft Access

Vor year

Если вы не знаете, как сделать условие «ЕСЛИ-ТО» в базе данных Microsoft Access, то посмотрите это видео. На простых…

Microsoft Access № 9: условие на значение AccessАндрей Домостой

Vor 3 years

Как задать в Access условие на проверку значения поля? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонта…

Microsoft Access № 13: автоматическое заполнение поля макросом данных AccessАндрей Домостой

Vor 3 years

Как при помощи макроса данных Access автоматически задать значение логического поля (женский или мужской…

SQL: создаем запросы на выборку с условием (WHERE) в Microsoft AccessУроки по Microsoft Access

Vor year

Если вы не знаете как создать SQL-запросы в базе данных Microsoft Access, то посмотрите это видео. На примере стандарт…

Как создать запросы в Microsoft Access за 10 минутУроки по Microsoft Access

Vor 3 years

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете как создать…

Основные свойства полей таблицы Microsoft AccessУроки по Microsoft Access

Vor year

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете какие свойства…

Урок 7 Access.Запросы Часть 5 Вычисления и функцииMoodle Donguu

Vor 3 years

Microsoft Access № 72: вычисление суммы в таблицах, запросах, формах и отчётах AccessАндрей Домостой

Vor year

Как создать вычисляемые поля суммы в таблицах, запросах, формах и отчётах Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗА…

Урок 7.Access.Запросы. Часть4. Запросы с условиемMoodle Donguu

Vor 3 years

КАК и ЗАЧЕМ использовать мастер подстановок в Microsoft AccessУроки по Microsoft Access

Vor year

Если вы не знаете зачем использовать мастер подстановки в программе Microsoft Access, то посмотрите это видео….

ЛЕГКОЕ создание маски ввода в базе данных Microsoft AccessУроки по Microsoft Access

Vor year

Узнайте, как легко и быстро создать маску ввода в базе данных Microsoft Access — accesshelp.ru/maska-vvoda-v-microsoft-access/ Если…

Как создать запрос с параметром в Microsoft Access за 7 минутУроки по Microsoft Access

Vor year

Если вы не знаете, как создать запрос с параметром в базе данных Microsoft Access, то посмотрите это видео. Продолжа…

Урок 6. Запросы. Часть2. Запрос на объединениеMoodle Donguu

Vor 3 years

Microsoft Access № 68: фильтрация при помощи полей со списком AccessАндрей Домостой

Vor 5 years

Фильтрация в форме Access нужных записей при помощи полей со списком Access. КУПИТЬ ВИДЕОКУРС ИЛИ ЗАКАЗАТЬ БАЗУ:…

Запрос на поиск записи без подчиненных в базе данных Microsoft AccessУроки по Microsoft Access

Vor year

Узнайте, как найти записи без подчиненных в Access с помощью запроса. Продолжаем работать с базой данных Access…

Microsoft Access № 51: выделение записи Access при помощи условного форматированияАндрей Домостой

Vor 3 years

Как выделить (подсветить) запись Access при помощи условного форматирования? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ…

Microsoft Access № 8: значение Access по умолчаниюАндрей Домостой

Vor 3 years

Как в Access установить значение поля по умолчанию? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте…

SQL: создаем вложенные подзапросы в запросах AccessУроки по Microsoft Access

Vor year

После просмотра данного видеоурока вы научитесь создавать встроенные подзапросы на языке SQL. В базе данных…

SQL: Агрегатные функции SUM, AVG, COUNT, MIN, MAX в запросах AccessУроки по Microsoft Access

Vor year

Если вы не знаете как создать SQL-запросы в базе данных Microsoft Access, то посмотрите это видео. На примере стандарт…

Access. Таблицы. 2. Первичный ключ. Подстановки.Vigil IT-video

Vor year

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

Как быстро создать ПЕРЕКРЕСТНЫЙ запрос в базе данных Microsoft AccessУроки по Microsoft Access

Vor 11 Monate

Если вы не знаете как создать перекрестный запрос в программе Microsoft Access, то посмотрите это видео. Продолжаем…

Microsoft Access № 64: запрос с параметром AccessАндрей Домостой

Vor 8 Monate

Что такое запрос с параметром в базе Microsoft Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте:…

Как создать макросы в Microsoft Access за 7 минутУроки по Microsoft Access

Vor 3 years

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…

Microsoft Access № 57: немного о функции Access FormatАндрей Домостой

Vor 4 years

Примеры использования в Access функции Format. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте: vk.co…

1 Изменение данных в Access 2013 с помощью запросов на обновлениеТвойКомп

Vor 3 years

Урок 45 Создание параметрического запросаANABOL2010

Vor 6 years

6.3 Запрос с параметрами Microsoft Access 2010.Dmitrii Dmitrii

Vor 2 years

Раздел 6. Запросы: основные возможности. Запросы к базам данных Microsoft Access 2010.

Многотабличные запросыАлексей Муратов

Vor year

Выполнил Муратов А.А.

Как создать ВЫЧИСЛЯЕМЫЕ запросы в базе AccessУроки по Microsoft Access

Vor year

Если вы не знаете, как создаются запросы с вычислениями в базе данных Microsoft Access, то посмотрите это видео….

Флажки и группа переключателей в базе данных AccessУроки по Microsoft Access

Vor 7 Monate

Если вы не знаете, как добавить элементы флажки и переключатели на форму Access, то посмотрите это видео. Также…

Создание выражений в запросахАнастасия Калинникова

Vor 2 years

Microsoft Access № 12: совершенствование логического поля AccessАндрей Домостой

Vor 3 years

Как сделать, чтобы в логическом поле Access вместо флажков были нужные текстовые значения? КУПИТЬ ВИДЕОКУРСЫ…

Что такое ключевые поля и индексы в БД Microsoft AccessУроки по Microsoft Access

Vor year

Если вы не знаете, что такое первичный ключ, как создаются ключевые поля и для чего нужно использовать индек…

Создание командной кнопки для формы БД AccessУроки по Microsoft Access

Vor 10 Monate

Если вы не знаете, как создать кнопку в форме Access, то посмотрите это видео. Что вас ждет в этом видео? Разбер…

Как посчитать возраст в базе данных AccessУроки по Microsoft Access

Vor 11 Monate

Если вы не знаете, как посчитать возраст в базе данных Microsoft Access, то посмотрите это видео. На простом запросе…

Обучение в Access замена кода на значение атрибутаДанил Салихов

Vor 3 years

Обучение в Access замена кода на значение атрибута.

Создание кнопки в отчете Microsoft AccessУроки по Microsoft Access

Vor 11 Monate

Если вы не знаете, как создать кнопку в отчете базы данных Microsoft Access, то посмотрите это видео. ВНИМАНИЕ!!…

Microsoft Access № 6: маска ввода Access для датыАндрей Домостой

Vor 3 years

Что такое маска ввода Access и как её применить к дате? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонта…

Урок 8 Access ОтчетыMoodle Donguu

Vor 3 years

Как сменить валюту в Access?Captain Jack

Vor 2 years

0,00грн;-0,00грн Поблагодарить автора: Кошелек Webmoney: Гривня — U276236215318 Рубли — R424376044144 Доллары — Z261544301868.

Как увеличить количество элементов в кнопочной форме MS AccessУроки по Microsoft Access

Vor 10 Monate

Появилось сообщение «На странице кнопочной формы допускается не более восьми элементов», не знаете как…

Access 2013 Урок 15 Создание связей с помощью схемы данныхIT видео

Vor 2 years

Microsoft Access № 33: поиск в Access одинаковых значений в четырёх полях AccessАндрей Домостой

Vor 2 years

Как отобрать одинаковые значения в Access из четырёх полей таблицы Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ:…

Как сделать запросы в базе данных Microsoft Access 2016Уроки по Microsoft Access

Vor year

Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…

ПОШАГОВОЕ создание схемы данных в базе данных AccessУроки по Microsoft Access

Vor year

Если вы не знаете, как ПРАВИЛЬНО построить схему данных в программе Microsoft Access, то посмотрите это видео. Продо…

Microsoft Access № 77: применение составного индекса в AccessАндрей Домостой

Vor 10 Monate

Установим в таблице Access проверку уникальности по четырём полям при помощи составного индекса Access. КУПИТЬ…

Microsoft Access № 1: присваивание объекту Access статуса системногоАндрей Домостой

Vor 3 years

Присвоим объекту базы данных Access статус системного, чтобы любопытные пользователи не совали свой нос, куда…

3.1 Ключевые поляOleg PC

Vor 2 years

Microsoft Office Access или просто Microsoft Access — реляционная система управления базами данных (СУБД) корпорации Microsoft….

Всем привет, сегодня разбираем функцию IIF в запросах Access. Если вы не знаете, как создать условие «ЕСЛИ ТО» в базе данных Microsoft Access, то вы пришли по адресу.
На простых запросах мы разберем принцип работы встроенной функции IIF. С помощью IIf можно определить, является ли выражение истиной или ложью. Если выражение истинно, IIf вернет одно значение; если ложно, IIf вернет другое значение.

Синтаксис функции IIF: IIf (условие; если истина; если ложь).
1 аргумент — наше условие. Если это условие выполняется, то функция IIF в запросах Access вернет значение второго аргумента, если же условие не выполняется, то функция IIF в запросах Access вернет значение третьего аргумента.

Рассмотрим базу данных «Студенты». Если вы хотите более подробно ознакомится с тем, как создавалась база данных Access Студенты, то переходите по ССЫЛКЕ.

Рассмотрим 1 пример. У нас есть таблица СТУДЕНТЫ, известно, что некоторые студенты получают стипендию. Предположим, что сумма базовой стипендии 5000 руб.

Создадим такой запрос, который начислит 5000 руб тем студентам, кто получает стипендию, а всем остальным — 0!
Перейдем в конструктор запросов, нам понадобится дополнительное вычисляемое поле, а также функция IIF в запросах Access.

Результат запроса с функцией IIF представлен ниже:

Рассмотрим 2 пример.
Для 2 примера необходимо в таблицу СТУДЕНТЫ добавить новое логическое поле МЕДАЛЬ.

Студентам, которые имеют стипендию и медаль начислим 7000 рублей, у кого просто стипендия — 5000 руб, остальным -0!
Снова нам поможем функция IIF в запросах Access.

Обратите внимание, что функцию IIF можно использовать в качестве аргумента другой функции IIF.

Рассмотрим 3 пример.
Работаем с таблицей ПРЕПОДАВАТЕЛИ. Мы знаем, сколько получает каждый преподаватель и знаем, сколько у него детей.

Сделаем так, чтобы преподавателям, у которых больше 2 детей, начислялась надбавка 10000 рублей, тем у кого от 1 до 2 детей — 5000 рублей, у кого нет детей — 0!

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

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