Добавил:
t.me Инфо для ГУАП студентов от меня: https://kafaka.notion.site/99e6d9b70ca74f7baef3daea17839e5a Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Чурилов / Z9411_Чурилов_инф_системы_лаб_2.docx
Скачиваний:
3
Добавлен:
14.10.2024
Размер:
284.18 Кб
Скачать

2. Реализация однотабличных запросов с несколькими условиями отбора.

Кейс 4. Пользователь хочет узнать, сколько в компании работает водителей-женщин, которые получили права не ранее 2017 года и не позже 2020 года.

В режиме Конструктора запросов выберем для последующей работы таблицу Водители. Определим поля нового запроса: Фамилия, Имя, Отчество, Пол, Дата получения прав. В поле Пол водителя укажем, что нас интересует только женский (Ж). Для написания второго условия отбора воспользуемся Построителем выражений, где пропишем формулу: Between #01.01.2017# And #31.12.2020#.

Рисунок 10 – Заполнение полей четвертого запроса

После сохранения запроса выполним его, нажав соответствующую кнопку в верхнем меню программы.

Рисунок 11 – Выборка по запросу «Водители_Ж_Права_2017-2020»

Кейс 5. Пользователь хочет выяснить, сколько было выполнено рейсов, длительность которых не более 25 дней, а величина оплаты за день превышает 2500 рублей.

В режиме Конструктора запросов выберем для последующей работы таблицу Выполнение рейсов. Определим поля нового запроса: Код маршрута, Код водителя, Дата отправки, Кол-во дней, Оплата/день, Премия, Сумма оплаты. В поле Кол-во дней запишем комбинированное правило <=25, а в строке Оплата/день укажем >=2500.

Рисунок 12 – Заполнение полей пятого запроса

Реализуем вычисляемый запрос на нахождение суммы оплаты работы водителя без премии с помощью построителя выражений. В поле вычисляемого запроса внесём текст: Сумма оплаты без премии: [Выполнение рейсов]![Сумма оплаты] - [Выполнение рейсов]![Премия].

Рисунок 13 – Разработка вычисляемого поля

После сохранения запроса выполним его, нажав соответствующую кнопку в верхнем меню программы. Обратим внимание, что данные, полученные в ходе выполнения запроса, не хранятся в базе данных, а вычисляются в момент выполнения запроса.

Рисунок 14 – Выборка по запросу «Рейсы_меньше25д_больше2500руб»

Кейс 6. Пользователя интересует, есть ли в компании водители гражданства конкретной страны и определенного года рождения.

В режиме Конструктора запросов выберем для последующей работы таблицу Водители. Определим поля нового запроса: Фамилия, Имя, Отчество, Год рождения, Гражданство, Дата получения прав.

Для создания параметрического запроса, в котором условие отбора по определенному полю пользователь сможет задать самостоятельно уже во время работы, в разделы Год рождения и Гражданство запишем следующие сообщения: [Введите год рождения] и [Введите страну гражданства] в качестве подсказки.

Рисунок 15 – Заполнение полей шестого запроса

После сохранения запроса выполним его, нажав соответствующую кнопку в верхнем меню программы. В появившихся окнах запишем желаемые значения для отбора водителей.

Рисунок 16 – Фильтрация по полю Год рождения

Рисунок 17 – Фильтрация по полю Гражданство

В результате отбора получим следующие данные.

Рисунок 18 – Выборка по запросу «Параметрический_запрос»