Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабораторный практикум по Access Ломакиной Г.В....doc
Скачиваний:
9
Добавлен:
09.11.2019
Размер:
702.46 Кб
Скачать

Конструктор запросов

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

  1. Выбрать объект Запросы.

  2. Выделить запрос, который требует корректировки, затем щёлкнуть на кнопке Конструктор. Появится окно режима конструктора запроса (рис. 3.1.)

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

Перейти к объекту Запросы в окне базы данных и вызвать команду СОЗДАНИЕ ЗАПРОСА В РЕЖИМЕ КОНСТРУКТОРА.

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

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

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

Рис. 3.1 Окно конструктора запросов

Теперь необходимо добавить те поля, с которыми вам предстоит работать.

  1. Щёлкните строку Имя таблицы в первом пустом столбце. Появится стрелка, показывающая наличие спускающегося списка.

  2. В спускающемся списке выберите таблицу

  3. Щёлкните строку Поле прямо над именем таблицы, которую вы выбрали. Появится стрелка спускающегося списка.

  4. В этом списке выделите поле. Его имя появится в строке поле и будет расположено в том столбце, где вы его выделили.

Другой способ добавить поля:

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

  2. Щёлкните имя поля и перетащите его в строку Поле первого пустого столбца.

Добавление условий отбора

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

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

Для формирования условий отбора используются операторы сравнения >, >=, <, <= и <>. Операции сравнения могут связываться логическими операциями And (И) и Or (ИЛИ). Для этих же целей используется оператор диапазона Between <нижнее_значение> and <верхнее_значение>. Например, выбор книг стоимостью от 100 до 200 рублей может быть реализован через ввод в запросе условия в поле Стоимость в виде >=100 and <=200 или Between 100 and 200.

Перечень значений в условии выборки можно задать и оператором In (значение, значение, ...). Например, выбор студентов факультетов МТФ или ФАПУ можно реализовать, указав в поле Факультет запроса условие In ("МТФ", "ФАПУ"). Это же условие можно записать и через операцию ИЛИ: "МТФ" or "ФАПУ". Также можно указать одно название факультета в строке Условие отбора (см. рис. 9.1), а второе - в следующей строке или. Число строк или не ограничено.

Для выбора записей с пустыми значениями в некотором поле надо в соответствующем поле бланка запроса указать оператор Is Null. Наоборот, записи с непустыми значениями в данном поле выбираются по оператору Is not Null.

В выражениях отбора также можно использовать знаки математических операций +, -, /, * и неограниченное число круглых скобок. Сложные выражения в условиях отбора могут формироваться с помощью соответствующего построителя, который вызывается кнопкой на панели инструментов.

Запросы с параметрами

В таких запросах ввод условий отбора производится пользователем при каждом запуске запроса. Для организации запроса с параметрами необходимо в строке Условие отбора вместо самого условия в квадратных скобках ввести текст приглашения на его ввод:

[<текст приглашения>].

При запуске запроса с параметрами появляется диалоговое окно (рис. 3.2), в котором пользователь должен ввести условие отбора и нажать кнопку ОК.

Рис. 3.2

Вычисления в запросах

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

<Название формируемого поля>:<выражение>

В <выражении> можно использовать знаки арифметических операций, круглые скобки и имена полей в []. Например, стоимость партии можно вычислить по выражению:

Стоимость_партии:[количество_товара]*[стоимость_единицы_товара].

Если при вычислениях необходимо использовать данные из другой таблицы, то её имя указывается в префиксе, который отделяется от имени поля знаком !, например:

Стоимость_партии:[количество_товара]*[Товар]![стоимость_единицы_товара].

В этой формуле [Товар] – имя таблицы.

В случае сложного выражения можно вызвать построитель выражений щелчком на кнопке .

Для просмотра результатов запроса необходимо вызвать команду ЗАПРОС, ЗАПУСК или щёлкнуть на кнопке ЗАПУСК на панели инструментов. Результаты появятся в окне, похожем на таблицу.

Запросы с групповыми операциями

В СУБД Access существует возможность задать запросы с групповыми операциями, что позволяет находить интегральные показатели для групп записей в таблице. Каждая такая группа характеризуется одинаковым значением по какому-то полю, например, одинаковым названием отдела или семейным положением. Для перехода в данный режим запросов необходимо в панели инструментов нажать кнопку ГРУППОВЫЕ ОПЕРАЦИИ , что приведет к появлению в бланке запроса новой второй строки с одноименным названием. В ячейках данной строки указывается или режим группировки по некоторому полю (опция Группировка), или название групповой операции:

  • Sum - сумма значений;

  • Avg - среднее значение по данному полю для всей группы;

  • Count - число записей в данной группе;

  • Max - максимальное значение поля в каждой группе;

  • Min - минимальное значение поля в каждой группе;

  • First - первое значение данного поля в каждой группе;

  • Last - последнее значение данного поля в каждой группе и др.

При выполнении запроса СУБД разбивает таблицу на группы, число которых равно числу существующих значений в группируемом поле, и реализует для каждой группы требуемую операцию, т.е. число строк в выборке равно числу групп.