Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическое занятие 6 сложные запросы.docx
Скачиваний:
17
Добавлен:
08.09.2019
Размер:
1.35 Mб
Скачать

Создание запросов с вычисляемыми полями и групповыми вычислениями

Задание 3. Создайте запрос на выборку, подсчитывающий суммарное количество заказанного товара по наименованиям.

Последовательность действий:

  • Создайте новый запрос в режиме конструктора и добавьте таблицы То­вары и Заказы в запрос.

  • Перетащите в бланк запроса поля Код товара, Наименование товара, Количество на складе и Количество.

  • Выполните команду Конструктор/Показать или скрыть/Итоги.

В результате будет добавлена строка Групповые операции

  • В столбце поля Количество раскройте список групповых операций и выберите функцию Sum.

  • Сохраните запрос под именем Суммарное количество товаров и запус­тите его на выполнение. В поле Sum _Количество будет подсчитана сумма ко­личества товаров по всем заказам.

  • Вернитесь в режим конструктора запроса.

Переименование полей в запросе

Чтобы изменить имя поля Sum _Количество, которое Ассеss предло­жил по умолчанию, выполните следующие действия:

• Установите курсор перед словом Количество в строке Поле и введите Суммарное количество: (должно получиться Суммарное количество: Количество).

  • Сохраните запрос и запустите его на выполнение.

  • Закройте окно запроса.

Задание 4. Создайте запрос на выборку, подсчитывающий остаток товара на складе.

Последовательность действий:

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

  • В окне Добавление таблицы щелкните по вкладке Запросы и добавьте запрос Суммарное количество товаров. Закройте окно добавления таблицы.

  • Включите в запрос поля Наименование товара, Количество на складе и Суммарное количество.

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

  • Воспользовавшись списками папок и полей создайте следующее выражение:

Остаток: [Суммарное количество товаров]![Количество на складе]- [Суммарное количество товаров]![Суммарное количество]

  • После задания выражения нажмите Ок в окне построителя выражений.

  • Сохраните запрос под именем Вычисление остатка на складе и запус­тите его на выполнение.

  • Просмотрите результаты выполнения запроса и закройте окно запроса.

Задание 5. Создайте запрос на выборку, подсчитывающий общую сумму заказов.

Последовательность действий:

  • Создайте новый запрос в режиме конструктора

  • Добавьте в запрос таблицы Товары и Заказы.

  • Включите в запрос поле Наименование товара.

  • Создайте новое поле Сумма заказа, которое вычисляется как произве­дение полей Количество и Отпускная цена. Для этого щелкните мы­шью в ячейке строки Поле пустого столбца бланка запроса и нажмите кнопку построителя выражений. Воспользовавшись списками папок и полей, создайте следующее выражение:

Сумма заказа: [Заказы]![Количество]*[Товары]!(Цена]

После задания выражения нажмите Ок в окне построителя выражений.

  • Нажмите кнопку Итоги. В строке Групповые операции раскройте список групповых операций в созданном вами поле Сумма заказа и выберите операцию Sum

  • Сохраните запрос под именем Сумма заказов и запустите его на выпол­нение.

  • Просмотрите результаты выполнения запроса и закройте окно запроса.

Задание 6. Создайте запрос на выборку, который выводит фамилию, имя и полный адрес клиента.

Последовательность действий:

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

  • Добавьте в запрос таблицу Контакты.

  • Создайте новое поле Фамилия и имя, которое является объединением полей Фамилия и Имя. Для этого щелкните мышью в ячейке строки Поле пустого столбца бланка запроса и нажмите кнопку построителя выражений. Воспользовавшись кнопками построителя, списками папок и полей, создайте следующее выражение:

Фамилия и имя: [Контакты]!|Фамилия]&" "&[Контакты]![Имя]

  • После задания выражения нажмите Ок в окне построителя выражений.

  • Аналогично создайте новое поле Полный адрес, выражение для которо­го имеет вид:

Полный адрес:[Контакты]![Почтовый Индекс]&","& [Контакты]![Страна] & ", " & [Контакты]![Город] &", "& [Контакты]![Адрес]

  • После задания выражения нажмите Ок в окне построителя выражений.

  • Сохраните запрос под именем Контакты клиентов и запустите его на выполнение.

  • Просмотрите результаты выполнения запроса. Чтобы данные полностью выводились на экран, подгоните ширину столбцов.

  • Сохраните и закройте окно запроса.

Задание 7. Создайте запрос на выборку, который выбирает из таблицы Заказы поле Код заказа и вычисляет стоимость доставки: если в поле Способ доставки содержится значение Доставка на дом, то стоимость доставки равна 10% от суммы заказа, а если способ доставки - Самовывоз, то стоимость доставки равна 0.

Последовательность действий:

  • Создайте новый запрос в режиме конструктора. Добавьте таблицы Зака­зы и Товары в запрос и закройте окно добавления таблицы.

  • Добавьте в запрос поля Код заказа и Способ доставки.

  • Создайте новое поле Стоимость доставки. Для этого щелкните мышью в ячейке строки Поле пустого столбца бланка запроса и нажмите кнопку построителя выражений.

  • В окне построителя дважды щелкните по папке Функции, затем по пап­ке Встроенные функции, в центральном списке выберите категорию Управление и из крайнего правого списка выберите функцию IIf.

  • Примечание: функция IIf возвращает одно из двух значений в зависимости от истинности указанного выражения.

• Далее воспользовавшись списками папок и полей, создайте следующее выражение:

Стоимость доставки: IIf [Заказы]![Способ доставки]="Самовывоз";0;[Товары]![Цена]*[Заказы]![Количество]*0,1)

  • После задания выражения нажмите Ок в окне построителя выражений.

  • Запустите запрос на выполнение и просмотрите, как вычисляются значе­ния нового поля.

  • Вернитесь в режим конструктора. Щелкните по полю Стоимость дос­тавки. Откройте окно свойств (Конструктор/Показать или скрыть/Свойства)

  • В окне свойств установите для нового поля Формат поля - Денежный, Число десятичных знаков - 0. Закройте окно свойств.

  • Сохраните запрос под именем Вычисление стоимости доставки и за­пустите запрос на выполнение.

  • После просмотра результатов выполнения закройте окно запроса.