Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД Access.doc
Скачиваний:
2
Добавлен:
01.08.2019
Размер:
131.58 Кб
Скачать

2.2.1 Вызов конструктора запросов

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

2.2.2. Правила заполнения бланка запросов

Для получения полноценного запроса на выборку следует придерживаться следующих правил:

  1. Обязательно заполняются только строки «Поле» и «Условие отбора».

  2. Строка «Поле» заполняется с помощью расположенных в ней раскрывающихся списков имён полей выбранной таблицы (таблиц), теми из них, которые должны присутствовать в выборке. Кроме того, можно выделить и перетащить необходимые поля из таблиц, представленных в схеме данных запроса, в строку «Поле» бланка запроса.

  3. Строка «Таблица» заполняется автоматически именами таблиц для полей, выбранных в строке «Поле».

  4. При необходимости в строке «Сортировка» задается её вид по одному или нескольким полям. Имеются следующие варианты сортировки: «по возрастанию», «по убыванию», «отсутствуют» (используется по умолчанию).

  5. Строка «Вывод на экран» заполняется автоматически чёрными флажками. Если нужно чтобы информация из поля, участвующего в запросе, не отображалась в выборке, то выключается соответствующий флажок. Например, чтобы данные о величине оклада, используемые в условии отбора, не появлялись в выборке, отключают флажок, находящийся в столбце «Оклад».

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

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

2.3 Виды условий отбора

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

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

Константами являются не изменяющиеся значения, например True, False, да, Нет, Null (константы автоматически определяются в Access).

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

В выражении условия отбора допускается использование операторов сравнения: =, <, >, Between, In, Like и логических операторов And, Or, Not, которые определяют операцию над одним или несколькими операндами. Перечень операторов, которые могут присутствовать в условии отбора, и примеры простых условий приведены в табл. 1, кроме того, предполагается, что открыта таблица «Т1» с полями «Имя», «М_стаж» и «М_оклад». Отметим некоторые особенности написания условий отбора. Если выражение в условии отбора не содержит оператора, то по умолчанию используется оператор =. Текстовые значения в выражении вводятся в кавычках, если они содержат пробелы или знаки препинания. В противном случае кавычки можно не вводить, они будут добавлены автоматически.

Оператор Between проверяет, входит ли значение поля в заданный интервал. Используется для полей типа Дата/Время или числового типа. Например, Between 10 And 100 задает интервал от 10 до 100, а Between 10.01.70 And 10.02.77 задает интервал от первой даты до последней.

Таблица 1

Основные операторы, используемые в условиях отбора

Тип

Оператор

Описание

Пример

Поле

Условие отбора

Арифметические

^

Возведение в степень

Стаж

=3^0,5

*

Умножение

Стаж

>2*[Т1]![М_стаж]

/

Деление

Оклад

=[Т1]![М_оклад]/2

+

Сложение

Стаж

>=[Т1]![М_стаж]

-

Вычитание

Стаж

>=[Т1]![М_стаж]-10

Текстовые

&

Объединение строк

Фамилия

«Сотрудник: «& [Т1]![Имя]

Сравнения

>

Больше

Оклад

>5000

<

Меньше

Дата

<12/02/56

>=

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

Стаж

>=12,5

<=

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

Дата

<=12/02/56

=

Равно

Фамилия

= «Иванов И.И.»

<>

Не равно

Стаж

<>25

Between

Поверка на вхождение в интервал

Стаж

Between 10 And 15

Дата

Between 1.1.70 And 15.3.77

Like

Поверка по образцу

Стаж

Like «#5»

Фамилия

Like «П*»

Дата

Like «##.##.65»

In

Проверка на равенство любому значению из списка

Стаж

In(10;12;18)

Дата

In(1.1.70; 10.2.82)

Фамилия

In («Перов»; «Жуков»)

Логические

And

И (выполняются все условия)

Стаж

> 10 And < 15

Or

ИЛИ (выполняется одно из условий)

Дата

1.1.70 Or 10.2.82

Not

НЕ (выполняется обратное условие)

Фамилия

Not

(= «Иванов И.И.»)