Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Формирование и выполнение запросов в MS Access 2007.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.52 Mб
Скачать

3 Перекрестные запросы

Этот вид запросов относится к числу аналитических запросов для получения сводных данных. Данные запроса отображаются в виде двумерной таблицы-матрицы. Фактически это частный случай запроса группировки.

  1. Для получения такого запроса преобразуют обычный запрос в перекрестный, нажав кнопку-Перекрестный на вкладке Конструктор в группе Тип запроса.

В бланке появятся новые строки

- групповые операции

- перекрестная таблица

Свойство Групповая операция заполняется по аналогии с запросом группировки (см. предыдущий параграф)

Свойство Перекрестная таблица заполняется следующими значениями:

  • заголовок строк – определяет строки перекрестной таблицы (можно задать для нескольких полей),

  • заголовок столбцов – определяет колонки перекрестной таблицы (можно задать только для одного поля),

  • значение – определяет поле, значения которого суммируются и располагаются в клетках перекрестной таблицы (можно задать только для одного поля)

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

Создаем новый Запрос 1на выборку, на основе Главного запроса. Переносим в Запрос 1 поля для группировки - Назв_спец , -Форма_Об и поле для вычислений- Стоимость .

  1. Преобразуем запрос в перекрестный, нажав кнопку-Перекрестный на вкладке Конструктор в группе Тип запроса.

В бланке появятся новые строки Групповая операция и Перекрестная таблица

Задаем значение для свойства Перекрестная таблица:

  • Поле Назв_спец - заголовок столбцов,

  • Поле Форма_Об - заголовок строк,

  • Поле Стоимость - значение с групповой операцией суммирования Sum,

Результат выполнения запроса:

4 Запросы на изменение данных

  • добавление записей в существующую таблицу

  • удаление записей

  • обновление записей

Последние 2 вида запросов применяются для автоматизации вычислений. Например, удалить группу записей, удовлетворяющих заданному условию.

Технология создания таких запросов следующая:

  1. создается запрос-выборка

  2. запрос выполняется для визуального контроля результатов

  3. запрос-выборка преобразуется в запрос-изменение

4.1. Запросы на удаление данных

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

Пример 6. Удалить записи в таблице «Работы», в которых значение в поле «Дата» меньше заданной.

1)Создаем запрос-выборку, в который включаем только те поля, которые используются в условии отбора

  1. Задаем тип параметра

3) Выполняем запрос для проверки правильности отбора данных.

4) Запрос-выборка преобразуем в запрос-удаление. Для этого на вкладке Конструктор в группе Тип запроса: нажать кнопку Удаление

5) Выполняем запрос. Перед удалением будет выведено сообщение о количестве удаляемых записей

4.2. Запросы на обновление данных

Для внесения одних и тех же изменений в таблицу целесообразно создать запрос обновления с параметрами.

Пример 7. Для заданной специальности и формы обучения изменить значение поля Стоимость на заданный процент.

1)Создаем запрос-выборку Запрос 1, используя родительскую таблицу Специальность. В Запрос 1 включаем только те поля, которые используются в условии отбора (Назв_спец и Форма_ОбСпециальность) и которые необходимо изменить (Стоимость)

2) Задаем параметры отбора для обновления

3)Выполняем запрос для проверки правильности отбора данных.

4 ) Запрос-выборку преобразуем в запрос-обновление. Для этого на вкладке Конструктор в группе Тип запроса: нажать кнопку Обновление . Вводим формулу изменения значения стоимости

  1. Задаем параметры

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

Запрос до обновления

Запрос главный

Номер_догДоговор

Дата_заключения

ФИО_студента

Назв_Фак

Назв_спец

Форма_Об

Стоимость

План_ приема

4

06.10.2014

Смирнова

ФПИ

дизайн

вечерняя

24 750,00р.

10

3

06.10.2014

Сидоров

ФПИ

дизайн

вечерняя

24 750,00р.

10

2

06.10.2014

Петров

ФПИ

дизайн

дневная

20 625,00р.

15

1

06.10.2014

Иванов

ФПИ

дизайн

дневная

20 625,00р.

15

9

06.10.2014

Нестеров

ФЭМ

экономист

дневная

30 000,00р.

25

8

06.10.2014

Логинов

ФЭМ

экономист

дневная

30 000,00р.

25

7

07.10.2014

Аверьянова

ФЭМ

менеджер

дневная

45 000,00р.

20

5

07.10.2014

Савельева

ФЭМ

менеджер

дневная

45 000,00р.

20

10

07.10.2014

Семенов

ФЭМ

экономист

дневная

30 000,00р.

25

6

07.10.2014

Лазарева

ФЭМ

экономист

дневная

30 000,00р.

25

11

26.10.2014

Самарин

ФЭМ

экономист

дневная

30 000,00р.

25

12

27.10.2014

Федоров

ФПИ

дизайн

сокращенная

44 550,00р.

10

Запрос после обновления

Запрос главный

Номер_догДоговор

Дата_заключения

ФИО_студента

Назв_Фак

Назв_спец

Форма_Об

Стоимость

План_приема

4

06.10.2014

Смирнова

ФПИ

дизайн

вечерняя

18 562,50р.

10

3

06.10.2014

Сидоров

ФПИ

дизайн

вечерняя

18 562,50р.

10

2

06.10.2014

Петров

ФПИ

дизайн

дневная

20 625,00р.

15

1

06.10.2014

Иванов

ФПИ

дизайн

дневная

20 625,00р.

15

9

06.10.2014

Нестеров

ФЭМ

экономист

дневная

30 000,00р.

25

8

06.10.2014

Логинов

ФЭМ

экономист

дневная

30 000,00р.

25

7

07.10.2014

Аверьянова

ФЭМ

менеджер

дневная

45 000,00р.

20

5

07.10.2014

Савельева

ФЭМ

менеджер

дневная

45 000,00р.

20

10

07.10.2014

Семенов

ФЭМ

экономист

дневная

30 000,00р.

25

6

07.10.2014

Лазарева

ФЭМ

экономист

дневная

30 000,00р.

25

11

26.10.2014

Самарин

ФЭМ

экономист

дневная

30 000,00р.

25

12

27.10.2014

Федоров

ФПИ

дизайн

сокращенная

44 550,00р.

10

19