Перекрестный запрос позволяет создать запрос в виде электронной таблицы. Заголовками строк и столбцов служат имена полей, в ячейках отображаются вычисляемые данные (сумма, среднее, минимум, максимум и др).
Пример. Создать запрос о среднем балле успеваемости в каждой группе по каждому предмету.
Решение. Работа выполняется в два этапа: создается запрос на выборку, затем он преобразуется в перекрестный запрос.
1-ый этап. На основании таблиц Группа, Предмет, Успеваемость и Студент (!) создать запрос на выборку, включив поля Номер группы, Название предмета, Оценка.
2-ой этап. Находясь в окне Конструктора, в группе Тип запроса (вкладка Конструктор) выбрать Тип запроса: перекрестный. В конструкторе запроса появятся строки Групповая операцияи Перекрестная таблица.
По строке Групповая операция для полей Номер группы и Название предмета оставить значение Группировка, для поля Оценка выбрать функцию AVG.
По строке Перекрестная таблица для поля Номер группы выбрать Заголовок строк, для поля Название предмета – Заголовок столбцов, для поля Оценка – Значение.
В последний пустой столбик по строке Поле ввести: Средняя оценка: [Оценка]. По строке Групповая операция для этого поля выбрать функцию AVG, по строке Перекрестная таблица выбрать опять Заголовок строки. Сохранить запрос под именем зперек.
Выполнить запрос. Будет выведена следующая таблица.
Перекрестный запрос можно также создать с помощью Мастера запросов: 1-ый этап. Создать запрос на выборку и сохранить его. 2-ой этап. Создать перекрестный запрос: вкладка Создание – группа Другие – кнопка Мастер запросов – Перекрестный запрос – (.) запросы – выбрать созданный запрос на выборку – Далее – выбрать поле Номер группы в качестве Заголовка строк – выбрать поле Название предмета в качестве Заголовка столбцов – выбрать поле Оценка в качестве Значения, определив для него Функцию Среднее – (.)Да для вычисления итогов по группам – Далее – ввести имя запроса.
Используется для создания резервных копий таблиц, промежуточных таблиц для экспорта в другие базы данных, создания архивных таблиц и др. Например, архивные копии можно создать на отчисленных студентов, прежде чем они будут удалены из таблицы Студент.
Пример. Создать запрос на создание таблицы, включив в нее поля: Номер группы (из таблицы Группа), Фамилия, Пол, Дата рождения, Город (из таблицы Студент). Таблица создается для того, чтобы ее экспортировать в БД «Кадры».
Решение. Вкладка Создание – группа Другие – кнопка Конструктор запросов – добавить таблицы Группа и Студент – закрыть окно Добавление таблиц – перенести из таблиц указанные поля – выполнить запрос – вернуться в режим Конструктора. В группе Тип запроса выбрать Тип запроса: создание таблиц – задать имя таблицы , например, тЗапросСоздание - выбрать место расположения таблицы: (.) в текущей базе данных - выполнить запрос (команда Выполнить или вкладка Режим – Режим таблицы) – сохранить запрос под именем, например, зсоздтабл. Просмотреть таблицу тЗапросСоздание на вкладке Таблицы в области переходов.
Если при выполнении запроса появляются окна с вопросами, то отвечать Да. Чтобы эти запросы не появлялись на экране выполнить: кнопка OFFICE – Настройка Access – вкладка Дополнительно – в группе Подтверждение снять флажок у строки: запросов на изменение.
Если запрос не выполняется, то посмотреть, появилась ли строка о блокировке данных. Если появилась, то щелкнуть на кнопке Параметры в этой строке и установить флажок на снятие блокировки.
Этот вид запроса используется для отбора записей, в которых надо изменить значение определенного поля.
Пример. Студент может находиться в трех состояниях: учиться, в академическом отпуске, быть отчисленным. В начале года студент возвращается из академического отпуска, следовательно, в таблице Студент надо удалить отметку, определяющую академический отпуск. Для этих целей надо создать запрос на обновление.
Решение. 1-ый этап. Открыть в Конструкторе таблицу Студент и добавить поле Состояние, выбрать тип поля Текстовый, задать размер поля равный 1, по строке Условия на значения ввести: «» or «а» or «о»,по строке «Пустые строки» установить значение Да для поля Состояние.
Условие на значение означает, что если студент учится, то в поле Состояние должен быть пробел, если находится в академическом отпуске, то буква «а», если отчислен, то буква «о».
Сохранить таблицу – перейти в Режим таблицы и ввести символы состояния «а» и «о» для некоторых студентов.
2-ой этап. В начале года студент возвращается из академического отпуска, поэтому надо выполнить запрос на обновление, удалив признак «а»: Вкладка Создание – группа Другие – кнопка Конструктор запроса – добавить таблицу Студент – перенести только поле Состояние – по строке Условие отбора ввести «а» - в группеТип запросавыбрать Тип запроса: обновление. В конструкторе запроса появится новая строка Обновление. Для поля Состояние по этой строке надо указать пустую строку, введя: «». Выполнить запрос – сохранить запрос под именем зобновл. Просмотреть таблицу Студент.