Приложение: база данных "Страны мира"
§ 3.8. Запросы в Access 2007
Информатика 11 авт. Рывкинд И.Я, Лысенко Т.И, Черникова Л.А, Шакотько В.В.
Запросы являются одним из основных инструментов обработки данных в базах данных.
- Запросы могут обеспечивать не только поиск данных, которые соответствуют определенным критериям, как это осуществляется во время фильтрации, но и одновременное выполнение операций над данными и сохранение результатов поиска.
- Следует помнить, что формировать запросы с использованием нескольких таблиц можно только при наличии связей между выбранными таблицами. Эти связи отображаются в верхней части бланка запроса на выборку
- создание новых таблиц на основе анализа данных в уже существующих таблицах базы данных;
- вычисление обобщенных данных (суммы, максимального или минимального значения и т. п.) для заданных полей;
- нахождение значений новых свойств (проведение вычислений), используя данные из разных таблиц или запросов, например нахождение плотности населения определенной страны на основе площади и количества населения;
- внесение изменений в уже существующие таблицы (обновление данных, вставка и удаление записей и т. п.).
В зависимости от назначения запросов их разделяют на:
Запросы на выборку данных |
Запросы, с использованием которых на основе существующих таблиц создается таблица с данными, соответствующими определенным условиям |
Перекрестные запросы |
Запросы, в которых на первом этапе осуществляется обобщение данных (находится сумма, среднее, максимальное значение и т. п.), а на втором -группирование этих данных по двум наборам данных, один из которых определяет заглавия столбцов таблицы, а второй - заглавия строк. |
Запросы на внесение изменений |
Запросы, используя которые, пользователь может изменять значение в полях определенных записей, создавать новые записи или удалять существующие записи и т. п.; |
Запросы с параметрами |
Запросы, после запуска на выполнение которых пользователь должен ввести значение определенных параметров, по которым будет осуществлена обработка данных. |
Способы создания запросов.
1. Создание запросов с помощью Мастера запросов:
вкл. Создание - гр.Другие - "Мастер запросов";
2. Создания запросов в режиме Конструктора:
вкл. Создание - гр.Другие - "Конструктор запросов";
В запросах для записи условий отбора данных или для выполнения действий над данными используют выражения.
Выражения могут содержать:
- идентификаторы - имена полей таблиц и элементов управления в формах и отчетах;
- операторы - последовательность символов для обозначения операций.
Различают операторы:
- арифметические, сравнения, логические, объединения (сцепления), специальные;
- функции;
- константы - неизменные значения, например фрагмент текста или число;
- круглые скобки - для определения приоритета операций в выражении.
Логические операторы:
And |
Для применения к выражениям логической операции «И» (конъюнкция) |
>0 And > 4,7 |
Or |
Для применения к выражениям логической операции «Или» (дизъюнкция) |
"Монархия" Or "Конституционная монархия" |
Not |
Для применения к выражениям логической операции «Нет» (отрицания) |
Not "Азия" |
Between, and |
Значение должно быть в заданном диапазоне |
Between “А*” and “М*” |
Конкатенция (сцепление, объединение):
& |
Для объединения двух строк в одну |
[Фамилия] & [Имя] |
Специальные:
Like |
Для нахождения фрагмента текста, который соответствует образцу |
Like "В*" (содержимое текстового поля начинается на «В») Like "*a" or “*в” (содержимое текстового поля заканчивается на "*a" или “*в”) |
При создании выражений следует соблюдать определенные правила:
- имена полей и другие идентификаторы записываются в квадратных скобках;
- при ссылке на поле определенной таблицы используется восклицательный знак, например выражение [Товары]![Код товара] содержит ссылку на поле Код товара таблицы Товары;
- текст записывается в кавычках " ".
Примеры создания запросов.
I. Запросы на выборку. Рассмотрим создание запроса на выборку с использованием Мастера запросов.( приложение - таблица "Країна" базы данных "Страны мира")
Для базы данных Страны мира создадим запрос, который бы содержал данные о площади стран.
Для создания запроса необходимо открыть базу данных Страны мира и выбрать кнопку Мастер запроса группы Другие вкладки Создание.
Далее следует выполнить такую последовательность действий:
1. Выбрать в окне Новый запрос в списке видов мастеров запросов Простой запрос, после чего выбрать кнопку ОК.
2. Выбрать в списке Таблицы и запросы окна Создание простых запросов таблицу, на основе которой будет создан запрос, например таблицу "Країни".
3. Переместить из списка Доступные поля в список Выбранные поля нужные имена полей, например Название, Часть света, Площадь.
4. Выбрать один из вариантов отображения записей с данными: подробный (без выполнения операций сведения) или итоговый с использованием сведения (нахождение суммы, среднего значения, минимума, максимума для определенных полей) выбором соответствующего переключателя. (Этот и следующий шаг выполняется только для записей, которые содержат числовые данные.)
5. Выбрать при необходимости кнопку Итоги и установить для каждого из полей нужные операции сведения установлением соответствующих меток флажков. Выбрать кнопку ОК.
6. Ввести имя запроса в поле "Задайте имя запроса", например Площадь стран мира.
7. Выбрать вариант продолжения работы с запросом - открыть запрос для просмотра данных или изменить макет запроса выбором соответствующего переключателя.
8. Выбрать кнопку Готово.
- Если вы выбрали вариант открыть запрос для просмотра данных, то на экран будет выведена таблица результатов запроса. Это новая таблица, которая содержит поля, выбранные при конструировании запроса.
итог:
- Если же избран второй вариант - изменить макет запроса, то новый запрос откроется в представлении Конструктор. В этом представлении в верхней части рабочего поля размещен список полей таблицы, на основе которой был создан запрос.
Обратите внимание!!!
Количество списков с перечнем полей таблиц или запросов можно изменить, выполнив Работа с запросами => Конструктор => Настройка запроса => Отобразить таблицу. В окне Добавление таблицы следует выбрать название нужной таблицы и выбрать Добавить.
В нижней части рабочего поля окна запроса размещена таблица конструктора. Она содержит такие строки:
- Поле, в которой отображаются имена выбранных полей
- Имя таблицы, в которой отображаются имена таблиц, в состав которых входят соответствующие поля;
- Сортировка, в которой может отображаться вид сортировки, который будет применен к записям данного поля в таблице запроса;
- Вывод на экран, содержащая флажок, установленная метка которого свидетельствует о том, что данное поле будет отображаться в запросе;
- Условие отбора, которая может содержать условие - выражение для выборки данных из соответствующего поля;
Например, необходимо выполнить запрос по странам, расположенных в "Австралии и Океании" и площадь которых больше 1000 тыс.кв.км или меньше 40 тыс.кв.км.Дополнить запрос строкой Итоги. Созданный запрос по таким критериям сохранить как "Площадь_Запрос":
- ИЛИ - для записи еще одного выражения, которое является частью составного условия и соединяется с выражением в строке Условие отбора логической операцией ИЛИ.
Следующие строки могут содержать другие выражения, которые связаны с выражениями в строках Условие отбора И или логической операцией ИЛИ.
Если в строке Условие отбора записаны выражения для нескольких столбцов (полей), то они объединяются в одно выражение логической операцией И.
Для применения избранных значений параметров запроса необходимо перейти к Режиму таблицы. Для этого нужно выполнить Работа с запросами =>Конструктор => Результаты => Выполнить.
К полученному запросу можно добавить строку с итогами. Для этого следует выполнить Главная => Записи => Итоги. И в строке Итог, например, поля Площадь открыть список возможных вариантов обобщения данных и выбрать, например, Сумма. Созданная таблица запроса представлена на рисунке :
Настроим формат вывода числовых данных поля "Площа" и сохраним запрос как "Площадь Запрос" :
Итог: