Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаборатор access.doc
Скачиваний:
39
Добавлен:
02.02.2015
Размер:
32.54 Mб
Скачать

2.1.5. Создание запроса типа "внешнее объединение".

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

Создадим запрос, выводящий информацию обо всех студентах, с задолженностями и без. В этом запросе будет использоваться внешнее объединение таблиц "Студенты" и "Результаты" по совпадению поля "Номер_С" со всеми записями таблицы "Студенты".

Для создания внешнего объединения необходимо изменить параметры объединения. Откроем запрос "Задолженность" в режиме конструктора. Щелкнем

по линии связи между таблицами "Студенты" и "Результаты" для открытия диалогового окна "Параметры объединения".

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

Выберем третий тип связи и щелкнем на кнопке "Ок". После этого на линии соединения таблиц появится стрелка, указывающая на внешнее объединение. Сохраним модифицированный запрос (через “Сохранить как” ("Save as…"), чтобы не затереть предыдущий запрос) под именем "Внешнее объединение по студентам". Выполним полученный запрос и сравним с результатами созданного в п.2.1.1.

2.2. Использование мастера запросов.

Сложные запросы могут быть сгенерированы при помощи мастера. Мастера запросов в MS Access могут генерировать три типа запросов: перекрестный

запрос, запрос повторяющихся записей, и записей, не имеющих себе подчиненных в дочерних таблицах.

Создадим перекрестный запрос, как в пункте 2.1.4 при помощи мастера самостоятельно.

Мастера запросов значительно облегчают работу начинающих пользователей MS Access, хотя при определенном опыте предпочтение отдается генерации запросов через дизайнер, или же напрямую через SQL-операторы. Режим SQL наиболее предпочтителен, т.к. поддерживает некоторые возможности, не реализуемые мастером и конструктором запросов.

3. Результаты работы

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

Приложение 1. Групповые операции в MS ACCESS.

Sum

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

Только для числовых и денежных полей

Avg

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

Min

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

Max

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

First

Возвращает первое значение этого поля в группе

Last

Возвращает последнее значение этого поля в группе.

Count

Возвращает число записей, в которых значения данного поля отличны от Null.

Stdev

Подсчитывает статистическое стандартное отклонение для всех значений данного поля в каждой группе. Только для числовых и денежных полей. Если в группе менее двух строк, Access возвращает значение Null.

Disp

Подсчитывает статистическую дисперсию для всех значений данного поля в каждой группе. Только для числовых и денежных полей. Если в группе менее двух строк, Access возвращает значение Null.