Запросы-выборки в MS Access: Учебное пособие

1
Запрос-выборка в MS Access
Что такое запрос?
В спроектированных таблицах содержится вся необходимая информация. Но как этой
информацией пользоваться? Как узнать, необходимые данные, содержащиеся в БД, при этом
быстро получить их?
Способы выбора данных:
Способ первый. Использование фильтра.
Объект БД Таблица — Имя таблицы — Открыть. На панели инструментов
нажмите кнопку Изменить фильтр, и с помощью построителя выражений
введите условия запроса. Затем на панели инструментов Запроса нажмите кнопку
Применить фильтр. В результате на экране появится динамический набор записей,
удовлетворяющих введенному условию. Но при дальнейших манипуляциях этот набор не
сохранится. Если вы хотите сохранить данный набор записей, то выполните следующие
действия. В окне Фильтра откройте меню Файл и выберите команду Сохранить как
запрос.
Способ второй. Вы создаете запрос по каждому из вопросов, которые предлагаются,
и сохраняете его в виде таблицы. Для создания простого запроса выполните следующие
действия: Объект БД Запрос — Создать — Конструктор или Простой запрос — Ок.
Для нового запроса устанавливается таблица (запрос), выбираются поля, после этого
вводятся условия запроса.
Механизм составления запросов позволяет вам резко расширить возможности системы
БД — за счет подключения функций соединения таблиц, расчетных операций, группировки
записей и отбора записей.
В общем случае запрос — это вопрос о данных. Существуют разные типы запросов (на
добавление записей, изменение, объединение), но мы рассмотрим простой тип: запросвыборку.
Запрос-выборка — это производная таблица, которая содержит те же структурные
элементы, что и обычная таблица (столбцы-поля и строки), и формируется на основе
фактических данных системы. При создании макета запроса (т. е. производной таблицы) в
общем случае нам необходимо выполнить четыре базовые операции:
1) указать системе, какие поля и из каких таблиц мы хотим включить в запрос;
2) указать условие отбора, т. е. сформулировать логическое выражение, которое
позволит включить в выборку только записи, удовлетворяющие какому-то условию.
Для того чтобы ответить на все вопросы, необходимо знать операторы задания
шаблонов. Приведем несколько примеров.
2
Примеры использования символов задания шаблонов
Использование символов
Образец
Поиск в Microsoft
Access
Вопросительный знак ( ? );
в качестве шаблона для любого символа.
За?ор
Забор
Затор
Звездочка ( * );
в качестве шаблона для любой группы
символов.
Д*нь
День
Добрый день
Длинная тень
Звездочка ( * );
в качестве шаблона для любой группы
начальных символов.
*й
128й
Последний
Знак фунта (#);
в качестве шаблона для любой цифры.
#-й
5-й
8-й
Восклицательный знак ( ! ) после первой
скобки;
для поиска символа, который не входит в
указанный набор символов.
Иванов[!аы]
Иванову
[но не Иванова или
Ивановы]
Условие поиска для простых запросов – это логическое выражение, представляющее
собой операцию отношения (>,<,=, ≠, ≤, ≥).
Примеры условных выражений
Условные выражения
Вывод записей, которые
Саратов
имеют значение Саратов
Not Саратов
не имеют значение Саратов
In (Саратов, Томск, Уфа)
имеют значение Саратов, Томск
или Уфа
<М
начинаются с букв А-Л
>=М
начинаются с букв М-Я
100
имеют числовое значение 100
<=20
имеют числовое значение 20
Date()
имеют значение текущей даты
>=01.01.94
Beetween 01.01.93 AND 31.12.93
*.02.*
имеют значение даты позднее
01.01.94
имеют значение года 1993
имеют значение месяца Февраль
3
Null
содержат в поле пустое значение
Is Not Null
имеют не пустое значение в поле
Like "Р*"
начинаются с буквы Р
Условие отбора одного поля может быть составным, при этом два логических
выражения соединяются знаком логической операции.
Наименование
или
и
не
Обозначение
or
And
not
При разработке конкретного запроса допускается любое сочетание базовых операций.
Например, составляя запрос к телефонному справочнику, мы можем ограничиться лишь
1-ой операцией и выдать на экран список телефонов с указанием имени абонента и
наименования категории.
Обратите внимание, что запрос — это единственный объект в MS Access, для
которого можно указать несколько исходных таблиц и (или) запросов (используется
связь между таблицами).
В мощных современных системах при формировании запроса иногда достаточно только,
сформулировать логическое выражение (например, с приказом выдать список заказов,
отправленных клиенту с кодом 4014 июля 2008 г.).
В базе данных Список.mbd откройте таблицу Учащиеся и просмотрите все поля.
П
оле
+
Ф
амилия
Тип
данных
Счетч
ик
Текст
овый
И
мя
Текст
овый
Д
Дата
ата
П
ол (м)
Логи
ческий
У
лица
Текст
овый
Д
Числ
ом
овой
К
вартира
овой
Числ
К
ласс
Описание
Числ
овой
Дата рождения
Пол мужской?
4
Г
руппа
Текст
овый
Х
обби
Текст
овый
Г
лаза
Группа
здоровья
физкультуре
Текст
овый
Цвет глаз
по
5
1.
Вид таблицы.
по
Дата
л
Фамилия
Имя
Улица
Дом Квартира Класс
Суханов
Сергей
16.02.8
Чердынска
Да
23
1
я
Пирогов
Юрий
5.12.93 Да
Куйбышев
а
Лебедева
Света
16.06.9 Не
5
т
Голдобин
Сергей
23.05.9
Да
8
Ельшина
Группа
Хобби
Глаза
74
10
основная
тяжелая зелены
атлетика е
6
31
8
основная
футбол
голубы
е
Пушкина
37
65
6
специальная
вязание
карие
Леонова
12
10
3
основная
лыжи
голубы
е
Наташа
24.05.9 Не Чердынска
37
2
т
я
48
9
специальная
чтение
серые
Суханова
Наташа
20.12.9 Не
6
т
Ленина
12
22
5
подготовительна
я
шитье
зелены
е
Петрова
Света
18.04.9 Не
2
т
Пушкина
37
3
9
основная
лыжи
серые
Горина
Оля
20.12.9 Не
4
т
Свиязева
66
99
7
подготовительна
аэробика карие
я
Попов
Михаи
л
7.07.97 Да
Леонова
72
6
4
подготовительна
я
Сергеев
Саша
30.11.9
Куйбышев
Да
9
а
3
31
2
основная
каратэ
Павлова
Елена
13.12.9 Не
5
т
Пушкина
5
6
6
основная
аэробика карие
Емельянов
25.05.9 Не
Наташа
а
1
т
Попова
40
47
10
основная
шитье
зелены
е
голубы
е
зелены
е
Евдокимов
Михаи
л
18.08.9
Чердынска
Да
0
я
3
40
7
основная
футбол
зелены
е
Евсеева
Елена
14.10.9 Не
4
т
Ленина
14
82
9
основная
лыжи
серые
Суханова
Света
29.07.9 Не Куйбышев
0
т
а
37
32
11
основная
аэробика карие
Ответьте на вопросы
(создайте запросы с соответствующими условиями отбора по полю)
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Кто учится в 8 классе?
Кто родился в 1994 году?
Кто живет на улице Пушкина?
У кого номер дома меньше 50?
У кого мужские имена?
Кто родился весной?
У кого фамилия начинается на букву С?
Кто не занимается тяжелой атлетикой?
У кого номер квартиры меньше 12?
Кто не определил свое хобби?
Кто родился до 1.01.95?
6
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Кто живет на улице Пушкина, Леонова или Свиязева?
Кто является однофамильцами с Сухановым Сергеем?
Кто увлекается аэробикой и лыжами?
Кто из мальчиков живет на улице Чердынской?
У кого имена начинаются на букву С, а фамилия — на букву П?
У кого карие глаза и этот человек не умеет вязать?
У кого из специальной группы женское имя?
Кто не живет на улице Ленина и не занимается в подготовительной группе?
Кто из мальчиков с голубыми глазами занимается каратэ?
Кто с серыми глазами учится в классе с нечетным номером,?
Кто из основной группы не живет на улице Пушкина или Ленина?
Кто из девочек, родившихся в мае или в феврале, номер дома больше 36?
7
Вопросы по теме Запрос-выборка
№
Вопрос
1. Что такое запрос-выборка?
2. Какие способы создания запросов на
выборку вы знаете?
3. Какие базовые операции, надо
выполнить при создании макета запроса?
4. Укажите два способа занесения
имени поля в создаваемом
запросе?
5. Какие логические операции
используются для записи условий
отбора?
6. Какие знаки отношения
применяются для записи условия
отбора?
7. Результат выполнения запроса
представлен в виде...
Ответ