Продажа билетов на самолёты в текущем месяце



Занятие №5: ПРОЕКТИРОВАНИЕ ЗАПРОСОВ В РЕЖИМЕ КОНСТРУКТОРА С ИСПОЛЬЗОВАНИЕМ ГРУППИРОВКИ, СЛОЖНЫХ УСЛОВИЙ, ВЫЧИСЛЕНИЙ

Предполагаем освоение следующих вопросов:

  1. Проектирование запросов в Режиме конструктора.
  2. Использование простых и сложных условий при проектировании запро­сов.
  3. Вычисления в запросах (вручную, с использованием построителя, с ис­пользованием встроенных функций).
  4. Сортировка и группировка в запросах.
  5. Запросы действия (на удаление, на обновление, на добавление, на создание новой таблицы)

В Access может быть создано несколько видов запросов

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

ü запросы действия – запросы, в результате выполнения которых изменяется БД. К их числу относят запросы на обновление (позволяют изменять значения полей во всех записях таблицы, удовлетворяющих указанным условиям), добавление (позволяют пополнять таблицу БД новыми записями), удаление записей (позволяют удалять из таблиц БД записи, удовлетворяющие указанному критерию) и создание таблиц (создает новую таблицу в БД на основе информации имеющейся в других таблицах БД).

ü перекрестные запросы - группируют данные представляя их для анализа в более наглядном и компактном виде

ВАРИАНТ ПОДГОТОВИТЕЛЬНЫЙ

  1. Проектирование запросов в Режиме конструктора с исполь­зованием сортировки и группировки

При проектировании всех запросов используются таблицы, постро­енные на Занятии 4.

ЗАДАНИЕ 1.Спроектировать три запроса с применением сортировки, включив в запросы все поля:

в первом запросе выполнить сортировку по полю ФИО по возрас­танию;

во втором запросе - по полю Год по убыванию;

в третьем - по полю Город по возрастанию.

Выполнить и сохранить все запросы под именами Сортировка1, Сортировка2, Сортировка3.

Рекомендации по выполнению

  1. Для создания первого запроса в окне базы данных Студенты перейди­те на вкладку Запросыи нажмите кнопку[Создать]
  2. Выберите режим создания запроса. Для этого в появившемся окне Но­вый запрос выберите Конструктори нажмите кнопку[Ok]На экране появится окно Добавление таблицы
  3. В окне Добавление таблицы выделите участвующую в запросе табли­цу, в нашем примере таблицу Пропуски, и нажмите кнопку [Добавить], после этого - кнопку [Закрыть]
  4. Переместите все поля из верхней панели запроса в нижнюю панель.
  5. Укажите, что вам надо отсортировать записи по полю ФИО по возрас­танию. Для этогощелкните в ячейке на пересечении сортируемого столбца ФИОи строки сортировка и израскрывающегося списка вы­берите нужный тип сортировки, например по возрастанию.
  6. Чтобы на экран вывелись значения всех полей, «включите» флажки в строке Вывод на экран для всех полей запроса
  7. Выполните запрос
  8. Проанализируй результат выполнения запроса
  9. Закройте запрос, сохранив его под именем Сортировка1
  10. Спроектируйте, выполните и сохраните оставшиеся два запроса из задания под именами Сортировка2 и Сортировка3.

ЗАДАНИЕ 1.Спроектировать запросы с использованием группировки, включив в них следующие поля:

ü Уважительные пропуски, где по каждому полю ФИО указать сумму (Sum) пропусков по уважительной причине;

ü Неуважительные пропуски с указанием по каждому месяцумы (Sum) пропусков по неуважительной причине;

ü Уважительные пропуски с указанием по каждому городу среднего (Avg) количества уважительных пропусков;

ü Неуважительные пропуски с указанием по каждому году минимального (Min) количества пропусков по неуважительным причинам;

ü Уважительные пропуски, с указанием по каждому полу мак­ального (Мах) количества пропусков по уважительной причине

Выполнить и сохранить все запросы под именами Итого1, Итого2, Среднее, Минимум, Максимум.

Рекомендации по выполнению

  1. Для создания первого запроса в окне базы данных Студентыперейдите вкладку Запросыи нажмите кнопку[Создать]
  2. Выберите режим создания запроса. Для этого в появившемся окнеНовый запросвыберите Конструктори нажмите кнопку [Ok]На экране появится окноДобавление таблицы
  3. В окнеДобавление таблицывыделите участвующую в запросе таблицу, в нашем примере таблицу Пропуски, и нажмите кнопку[Добавить], после этого - кнопку [Закрыть]
  4. Переместите нужные поля, а именно ФИО, Уважительные пропуски, из верхней панели запроса в нижнюю.

5. Активизируйте групповую операцию. Сделать это можно нажав на панели инструментов кнопку  (или выполнив команду Вид / Групповые операции), после чего на панели проектирования появятся слова Групповая операция

  1. Укажите поле, по которому будет проводиться группировка. Это полеФИО. На пересечении столбца ФИО, предназначенного для группиров­ки, оставьте слова группировка.
  2. Под группируемым полемУважительные пропускивыберите вместо слова группировканужную функцию, напримерSUM.
  3. Выполните запрос.
  4. Проанализируйте результат выполнения запроса.
  5. Закройте запрос, сохранив его под именем Итого1.
  6. Спроектируйте, выполните и сохраните оставшиеся запросы из задания.
  7. При группировке в запросе оставлять лишь группированное поле и те поля, в которых производятся арифметические операции: SUM, AVG и др.
  1. Проектирование запросов с использованием сложных условий

ЗАДАНИЕ 3. Спроектировать запросы, используя сложные условия, и включить в них следующие поля:

· ФИО, Пол, Город для женщин, проживающих в Минске или Бресте;

· ФИО, Пол, Город, Год для мужчин, проживающих в Солигорске, у которых год рождения находится в заданном диапазоне, например от 1977 до 1979;

· ФИО, Год, Город, Пропущено для живущих в Минске, имеющих заданный год рождения и пропуски по уважительной причине, меньше четырех часов, а неуважительной причине - меньше или равно 6 часам;

· ФИО, № зачетки, Город, Пропущено для живущих не в Минске, не в Витебске и имеющих пропуски более 2 часов по уважительной и неуважительной причинах;

· Выполнить и сохранить спроектированные запросы под именами Города, Дата1, Дата2, Пропуски, Задание выполнить самостоятельно.

При задании сложных yсловuи используются функции AND, OR, NOT, BETWEEN, LIKE, которые надо написать на пересечении столбца, в котором указывается условие и строки Условие Например выражения могут быть следующими

> 200 And < 250,

BETWEEN 4 AND 6

> 200 Or < 100,

LIKE C*.

LIKE C???

Not Минск And Not Витебск

  1. Проектирование сложных запросов с вычислениями

ЗАДАНИЕ 4. Спроектировать запросы, выполнив в них вычисления. В запросы включить следующие поля:

· ФИО, Всего1. Вычислить общую сумму пропусков для каждой ФИО,

· Город, Уважительные пропуски, Неуважительные пропуски, Всего2. Вычислить минимальное количество пропусков по уважительной и неуважительной причинах по каждому городу, а также общую сумму пропусков по каждому городу;

· Месяц, Уважительные пропуски, Неуважительные пропуски, Всего З, Вычислить среднее количество пропусков по уважительной и неуважительной причинах по каждому месяцу, а также общую сумму пропусков по каждому месяцу.

Выполнить и сохранить спроектированные запросы под именами Всего1, Всего2, Всего З.

Рекомендации по выполнению

1. Для создания первого запроса в окне базы данных Студенты перейдите на вкладку Запросы и нажмите кнопку[создать];

2. Выберите режим создания запроса. Для этого в появившемся окне Новый запрос выберите Конструктори нажмите кнопку[Ok];

3. На экране появится окно Добавление таблички;

4. В окне Добавление таблички выделите участвующую в запросе таблицу, в нашем примере таблицу Пропуски, и нажмите кнопку[Добавить], после этого кнопку[Закрыть];

5. Переместите поле ФИО;

6. Создайте вычисляемое поле. Для этого щелкните по заголовку колонки, в которой будете создавать вычисляемое поле. Обычно это первая пустая колонка;

7. Наберите название этого поля, закончив его двоеточием, и формулу для расчета, например, всего1: [Уважительные пропуски]+[Неуважительные пропуски]

8. Активизируйте групповую операцию. Укажите поле, по которому будет проводиться группировка. Это поле ФИО. Под группируемым полем всего 1;

9. Выберите вместо слова группировка нужную функцию, например SUM. Выполните запрос;

10. Проанализируйте результат выполнения запроса;

11. Закройте запрос, сохранив его под именем Всего1

12. Аналогично спроектируйте, выполните и сохраните оставшиеся запросы из задания.

 

ОТЧЕТ ПО РАБОТЕ.Отобразить таблички Пропуски и Расходы, запросы Сортировка1, Сортировка2, Сортировка З, Итого1, Итого2, Среднее, Минимум, Максимум, Города, Дата1, Дата2, Пропуски, Всего1, Всего2, Всего З на экране каскадом.

ВАРИАНТ ОСНОВНОЙ

1. Проектирование таблиц в Режиме конструктора, создание между таблицами связей, заполнение таблиц

ЗАДАНИЕ 1.В аэропорту Минск пассажиры регулярно осуществляют полеты в различные города, различными типами самолетов, покрывая различные расстояния, с пересадками и без них. Весь этот процесс информационно отображается в виде двух таблиц: Продажа билетов на самолеты в текущем месяце и Цены. На основании этих данных спроектировать базу данных Аэропорт, включив в нее две таблички и сохранив в папке с вашей фамилией. Создать связь между таблицами.

Рекомендации по выполнению

  1. Создайте в вашей личной папке базу данных Аэропорт.
  2. Спроектируйте в созданной базе данных Аэропортв Режиме конструктора структуру таблицы, сохранив ее под именем Билеты:

Таблица

Продажа билетов на самолёты в текущем месяце

Дата вылета ФИО Номер рейса Тип самолета Пункт назначения Расстояние Количество билетов
6.05.2006 Иванов 12 АИ Москва 968 41
  1. Спроектируйте в Режиме конструктора структуру таблицы,сохранив ее под именем Цены:

Таблица Цены

 Тип самолета  Цена за 1 км
АН 678,56
  1. Поле тип самолёта в таблице Цены сделайте ключевым.
  2. Создайте связь между таблицами Билетыи Ценыпо полю Тип самолёта она должна быть ∞:1
  3. Сохраните получившуюся связь
  4. Заполните в таблице Цены пять записей.
  5. Заполните в таблице Билеты столько записей, сколько у вас имеется типов самолетов таблице Цены.

2. Проектирование запросов выбора с использованием сложных условий

ЗАДАНИЕ 2. На основании таблиц Билеты в Режиме конструктора запросов спроектировать следующие запросы:

• все вылеты на заданную дату;

• все типы самолетов, направляемых в заданный пункт;

• какие пассажиры, какого числа вылетели заданным рейсом в заданный пункт.

Все спроектированные запросы сохранить под именами Дата, Самолеты, Пассажиры.

ЗАДАНИЕ 3. На основе таблиц Билеты и Цены спроектировать запросы, определяющие:

• какие пассажиры купили билеты в два заданных пункта и сколько споили билеты;

какие пассажиры вылетели одним из двух заданных типов самолетов и какова цена за 1 км;

• какие пассажиры вылетели в заданную дату и сколько стоили их билеты;

• какие пассажиры вылетели рейсами, покрывающими расстояние в заданном диапазоне, например, от 200 тыс. до 400 тыс. км, и какова цена за 1 км.

Выполнить и сохранить все запросы под именами Билет, Тип, Цена, Рейс.

 

В строке Условие отбора при указании условия можно использовать символы * и %. Для построения сложных условии использовать логические функции Not, Or, And, Between, Like например:

Ø 600 And < 250

Ø Between 200 And 800

ЗАДАНИЕ 4. На основе таблиц Билеты и Цены спроектировать запросы с использованием группировки, определяющие:


Дата добавления: 2018-04-15; просмотров: 41; ЗАКАЗАТЬ РАБОТУ