В последних двух строках бланка запроса (рис. 1.14) можно задавать условия на отбор записей. Путем комбинирования условий можно создавать сложные логические критерии отбора. Если выражения вводятся в ячейки строки Условие отбора, то получим сложный критерий, в котором отдельные условия объединены в одно целое с помощью операции логического умножения (И). При задании условий также и в строке ИЛИ получим итоговый критерий, который будет представлять собой логическое выражение в виде объединения выражений, заданных в строке И (Условие отбора) и строке ИЛИ. Ввод выражения может осуществляться либо непосредственно, либо с помощью построителя выражений. Чтобы вывести диалоговое окно построителя выражений, необходимо нажать кнопку Построитьна панели инструментовКонструктор запросов или щелкнуть правой кнопкой по ячейке Условие отбора и из контекстно-независимого меню выбрать команду Построить.
Ввод выражения, содержащего данные различного типа (числовые, логические, текстовые, дата или время) имеет свою специфику. Рассмотрим этот вопрос более подробно.
Вводимые текстовые выражения должны заключаться в двойные кавычки. Для отбора записей может использоваться часть текста с добавлением подстановочных знаков (символов шаблона). Эти знаки применяются в случае, если известна часть текстового выражения или требуется найти значения, начинающиеся с конкретной буквы или соответствующие определенному шаблону. Подстановочные знаки, используемые для отбора записей, приведены в табл. 1.3.
Таблица 1.3
Знак
Описание
Пример
*
Соответствует любому количеству знаков. Может использоваться в качестве первого или последнего знака текстовой строки.
Like "по*"— поиск слов, начинающихся со словосочетания "по" и имеющих любую длину.
?
Соответствует любому одному текстовому знаку в выражении.
Like "к?рка"— поиск слов, имеющих длину 5 символов, у которых вторая буква любая.
[ ]
Соответствует любому одному знаку из заключенных в скобки.
Like"б[ае]л"— поиск слов бал и бел.
!
Соответствует любому одному знаку, кроме заключенных в скобки.
Like"б[!ае]л" — поиск слов бил, бул, но не бал или бел.
-
Соответствует любому знаку из диапазона. Необходимо указывать этот диапазон по возрастанию (от A до Z, но не от Z до A).