- •Лабораторная работа № 5. Запросы на выборку
- •Программа работы
- •Краткие сведения
- •Виды запросов
- •Создание запроса на выборку Создание запроса. Окно Конструктора запросов
- •Добавление полей в запрос
- •Указание порядка сортировки
- •Задание условия отбора исходных данных
- •Применение параметров в запросе
- •Флажок вывода на экран
- •Изменение имени поля в запросе
- •Сохранение запроса
- •Выражения. Применение выражений в запросах
- •Элементы выражений
- •Операторы
- •Арифметические операторы
- •Операторы присваивания и сравнения
- •Логические операторы
- •Операторы слияния строковых значений (конкатенации)
- •Операторы идентификации "!" и "."
- •Другие операторы
- •Константы в явном представлении
- •Идентификаторы
- •Функции
- •Создание вычисляемых полей с использованием выражений
- •Построитель выражений
- •Создание выражения с помощью построителя выражений
- •Групповые операции
- •Порядок и методика выполнения работы
- •Содержание отчета
- •Контрольные вопросы
Виды запросов
Основные виды запросов:
запрос на выборку;
запросы-действия (запросы на изменение):
запрос на создание таблицы,
запрос на добавление записей,
запрос на обновление записей,
запрос на удаление записей;
перекрестные запросы.
Запрос на выборку просто генерирует ответ на заданный пользователем вопрос и на этом заканчивает свою работу. После выполнения запроса СУБД создает виртуальную (временную) таблицу, в которую заносит выбранную информацию и хранит ее до тех пор, пока сгенерированная таблица не будет закрыта. Фактически, механизм запроса-выборки работает следующим образом: до тех пор, пока конкретный запрос не инициализирован, он представляет собой всего лишь безжизненный набор каких-то инструкций, которые к тому же могут оказаться еще и неправильными. Когда пользователь или заранее написанный модуль обращается к конкретному запросу, его набор инструкций немедленно выполняется, в оперативной памяти компьютера возникает виртуальная итоговая таблица (которая, в свою очередь, сама может служить источником данных для другого запроса или пользовательской формы). Когда этот запрос закрывается, полученная таблица уничтожается, освобождая занимаемую память.
В отличие от запроса на выборку, запрос-действие оставляет после себя нечто конкретное и ощутимое. При помощи запроса-действия можно выполнить следующие задачи:
автоматически создать новую таблицу на основе данных, содержащихся в других запросах и/или таблицах (например, буквально за несколько секунд перенести еженедельные отчеты филиалов в отдельную таблицу).
обновить группу записей (в результате выполнения запроса содержимое нескольких произвольных полей или даже целых записей может быть заменено новыми данными);
удалить группу записей (в результате выполнения запроса в автоматическом режиме из одной или нескольких таблиц базы данных можно удалить некоторое количество записей);
вставить группу записей из другой таблицы (например, буквально за несколько секунд перенести еженедельные отчеты филиалов в единую базу данных в головном офисе предприятия).
Перекрестный запрос помогает анализировать влияние одних данных на другие. Запрос формирует двумерную матрицу с одним полем в качестве строк со значениями и другим полем в качестве столбца со значениями. Требуемая информация находится на пересечении строки и столбца. Перекрестный запрос выполняет те же функции, что и механизм создания сводных таблиц в Excel.
Создание запроса на выборку Создание запроса. Окно Конструктора запросов
Для создания нового запроса необходимо на вкладке Создание в группе Запросы (рис. 5.2) выполнить одно из следующих действий:
нажать на кнопку Мастер запросов ,
нажать на кнопку Конструктор запросов .
Рис. 5.2. Вкладка Создание
Профессионалы, хорошо освоившие данную СУБД или пользующиеся непосредственным программированием на языке запросов (SQL), выбирают режим Конструктор запросов, в котором все операции производятся вручную. Это позволяет сконструировать запрос любой сложности.
Новичкам для простоты можно воспользоваться Мастером построения запросов.
Мы из предлагаемых вариантов выбираем Конструктор, чтобы осознать подробности построения запросов. В окне Конструктора запросов появится диалоговое окно Добавление таблицы (рис. 5.3). Оно содержит вкладки, которые позволяют выбрать существующие таблицы и/или запросы для добавления в новый запрос в качестве источника.
Рис. 5.3. Добавление таблицы в запрос
Чтобы добавить таблицу/запрос в новый запрос, нужно в диалоговом окне Добавление таблицы:
выбрать ее и нажать кнопку Добавить
или двойной щелчок по требуемой таблице.
После добавления всех требуемых таблиц необходимо закрыть окно Добавление таблицы.
Если в процессе создания запроса потребуется добавить к источникам еще таблицу или запрос, для открытия окна Добавление таблицы нужно щелкнуть по кнопке Добавить таблицу или задать команду меню-Запрос-Добавить таблицу…
Выбранные таблицы разместятся в верхней части окна Конструктора запросов (рис. 5.4), а нижняя часть представляет собой бланк Запроса по образцу, который мы рассматривали в начале этой работы.
Рис. 5.4. Окно конструктора запросов
Теперь необходимо указать, какие поля будут включены в запрос.