Условия отбора записей

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

В качестве операндов могут использоваться: литералы, константы, идентификаторы (ссылки).

Литералами являются конкретные значения, воспринимаемые Access так, как они записаны. В качестве литералов могут быть использованы числа, строковые значения, даты. Например, если в запрос, созданный по таблице «Студенты» в поле «Фамилия» ввести, например, «Андреев», то результатом запроса будут выбранные сведения о студентах с такой фамилией. (Рис. 2.27).

Рис. 2.27 Применение литерал в запросе на выборку

Константами являются не изменяющиеся значения, которые определены в Access, например, Истина (True), Ложь (False), Пустые записи (Null), Не пустые записи (Not null).

Если, например, нужно получить список студентов, не имеющих домашнего телефона, то в условиях отбора в поле «Телефон» надо ввести условие Null (Рис. 2.28). В этом случае в запрос войдут все студенты, для которых поле «Телефон» пустое.

Рис. 2.28 Применение константы «Null» в конструкторе запросов

 
 

Если же нужен список студентов, имеющих телефон, то в соответствующем поле надо ввести Not null (Рис. 2.29). В этом случае в запрос войдут все студенты, для которых поле «Телефон» не пустое.

Рис. 2.29 Применение константы «Not null» в конструкторе запросов

Идентификатор представляет собой ссылку на значение поля, элемента управления или свойства. Идентификаторами могут быть имена полей таблиц, форм, отчетов и т.д. Они должны заключаться в квадратные скобки. Как правило, Access производит автоматическую подстановку скобок. Во многих случаях ссылка на конкретное значение должна указывать точное его местоположение в иерархии объектов базы данных, начиная с объекта верхнего уровня. Если необходимо указать ссылку на поле в конкретной таблице, форме, отчете, то перед именем поля ставится имя таблицы, формы, отчета, также заключенное в квадратные скобки и отделенное от имени поля восклицательным знаком. Например, ссылка на поле в таблице примет ВИД: [Имя таблицы]! [Имя поля].

 
 

Операторами сравнения и логическими операторами, использование которых допускается в условиях отбора, являются: =, <, >, о, <=, >=, Between, In, Like, And, Or, Not. Они определяют операцию над одним или несколькими операндами. Если выражение в условии отбора не содержит оператора, то по умолчанию используется оператор «равно». Одно и то же условие может быть задано с помощью разных операторов. Условия отбора, заданные для разных полей в одной строке, связываются по умолчанию с помощью логической операции "И" (т.е. выполняются одновременно) (Рис. 2.30), заданные в разных строках — с помощью логической операции "ИЛИ" (т.е. выполняется хотя бы одно из них) (Рис. 2.31). Например: для выбора студентов, получивших оценку «5» можно создать запрос, в котором условия выполняются одновременно:

Рис. 2.30 Условия отбора для двух полей, связанные логической операцией «И» (выполняются одновременно)

Для выбора «двоечников» (выполняется хотя бы одно из условий):

 
 

Рис. 2.31 Условия отбора для трех полей, связанные логической операцией «ИЛИ» (выполняется хотя бы одно из них)

Можно так же использовать комбинацию операторов.

Оператор Between позволяет задать интервал для числового значения и да­ты. Например: для таблицы «Товары» надо выбрать те, цена которых находится в пределах от 100 до 300 руб.

 
 


Рис. 2.32 Применение оператора Between … and … для создания условий отбора

Оператор In позволяет выполнить проверку на равенство любому значению из списка, который задается в круглых скобках. Например:

In("Математики";"Информатики";"Истории")

Оператор Like позволяет работать с образцами, использующими символы шаблона при поиске в текстовых полях. Допускается использование операторов шаблона — звездочка (*) и вопросительный знак (?).

Символ «звездочка» - означает произвольное количество любых символов. Например: если в поле «Фамилия» поставить Like И*, то в будут отобраны только фамилии, начинающиеся с буквы «И» (Рис. 2.33). Если ввести условие Like *ов, то будут отобраны все фамилии, заканчивающиеся на «ов». При записи в поле «Телефон» условия Like 3*, будут отобраны телефоны, начинающиеся с цифры 3.

Символ «?» означает один произвольный символ, или его отсутствие. Например: если в поле «Город» указано условие «Like М?????», то будут отобраны города, названия которых начинаются с буквы «М» и имеют не более 6 символов. (Подходит, например Москва или Минск, не подходит – Могилев).

 
 

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

Рис. 2.33 Применение оператора «Like» для создания условий отбора

Функции даты и времени — служат для проведения операций со значениями даты и времени. Например, функция DateDiff О вычисляет промежуток между двумя датами, а функция Date() возвращает значение текущей даты, Time() – текущего времени.

После ввода выражения в бланк и нажатия клавиши <Enter> Access выполняет синтаксический анализ выражения.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: