
- •Місце заняття у викладанні дисципліни
- •Структура заняття
- •Вимоги до оформлення та порядок зарахування роботи
- •Варіанти сфер діяльності для ведення бази даних
- •Методичні рекомендації та технологія виконання роботи Теоретичні відомості
- •1. Вирази в Access
- •2. Оператори
- •2. 1. Арифметичні оператори
- •2 .2. Оператори злиття рядків (конкатенації)
- •2. 3. Оператори порівняння
- •2. 4. Оператори ідентифікації. Ідентифікатори
- •3. Константи
- •4. Функції
- •5. Построитель выражений
- •6. Створення запитів
- •6. 1. Загальна характеристика запитів
- •6. 2. Типи запитів в Access
- •6. 3. Режими вікна запиту
- •6. 4. Створення запиту
- •6. 5. Дії у вікні конструктора запитів
- •6. 6. Підведення підсумків
- •6. 7. Перехресні запити
- •Технологія виконання роботи
- •Контрольні запитання
- •Перелік рекомендованої літератури
6. 7. Перехресні запити
Перехресний запит — це підсумковий запит спеціального типу, що виводить результат у вигляді перехресної таблиці, схожої на електронну таблицю.
Для створення перехресної таблиці потрібно вказати:
заголовки рядків — одне або кілька полів, значення яких будуть використані як заголовки рядків таблиці;
заголовки стовпців — поле, значення якого будуть використані як заголовки стовпців;
значення — числове поле, значення якого будуть використані для проведення підсумкових розрахунків;
групову операцію — групову функцію, що задає тип підсумкових розрахунків, або вираження, що містить групові функції.
Перехресні запити звичайно використовуються при створенні діаграм і звітів. Зберегти перехресну таблицю у вигляді звичайної таблиці Access за допомогою запиту на створення таблиці не можна.
Технологія виконання роботи
1. Запустіть Access та відкрийте базу даних Commerce, що була створена в Лабораторній роботе 7.
Між таблицями «Товары» и «Поставщики» існує відношення багато-до-багатьох. Воно вирішується в таблиці «ПРИХОД ТОВАРОВ», за допомогою якої можна працювати з даними двох таблиць одночасно.
2. Створення запиту.
Новий запит створіть в режимі конструктору. Включіть в нього таблиці Товары, Поставщики та Приход Товаров. Закрийте вікно Добавление таблицы, в результаті схема даних запиту міститиме три таблиці.
Якщо схема даних була раніше задана правильно, то поле Код_Товара з таблиці Товары зв’язано з полем Код_Товара з таблиці Приход товара, та поле Код_Поставщика з таблиці Поставщики зв’язано з полем Код_Поставщика з таблиці Приход Товара. Переконайтеся в цьому.
Додайте в бланк запиту поля таблиць в наступному порядку:
З таблиці Приход товаров поле Номер записи;
З таблиці Приход Товаров поле Дата;
З таблиці Товары поле Наименование;
З таблиці Приход Товаров поле Количество;
З таблиці Товары поле Цена;
З таблиці Поставщики поле Наименование;
Запустіть запит. Збережіть з ім’ям Многотабличный запрос.
Зверніть увагу на заголовки полів запиту. У них крім імен полів можна побачити імена таблиць - джерело даних.
Рис. 2. Многотабличный запрос
3. Створення в запиті полів, що обчислюються.
Скопіюйте Многотабличный запрос та перейменуйте його в Вычисление.
Відкрийте запит Вычисление в режимі конструктору. Використовуйте пункт Вставка головного меню, щоб додати в запит пустий стовпець після стовпця Цена. Задайте і’мя полю Стоимость. Знайдіть вартість як добуток поля Количество на поле Цена (выраз формується в рядку Поле стовпця Стоимость). Формувати вираз можна за допомогою Построителя выражений, або вручну. Запустіть запит.
Рис. 3. Запит Вычисление
4. Відбір записів.
Скопіюйте Многотабличный запрос тричі й перейменуйте копії в По дате, По поставщику, По товару. Також скопіюйте запит Вычисление та перейменуйте його в По стоимости.
Використовуйте поле « Условие отбора » у бланку запиту для вибору наступних записів:
Відкрийте в конструкторі запит По дате. Відсортуйте по даті. Виберіть всі операції в заданому діапазоні дат (діапазон виберіть довільно відповідно до Ваших даних, щоб використовувалася подвійна умова). Збережіть запит. Запустіть його.
Відкрийте в конструкторі запит По поставщику. Відсортуйте по постачальниках. Виберіть операції для одного з постачальників, назва якого вводиться із клавіатури. Збережіть запит. Запустіть його.
Відкрийте в конструкторі запит По товару. Відсортуйте по найменуваннях товарів. Виберіть операції по всіх найменуваннях товарів, крім якого-небудь одного, назва якого вводиться із клавіатури. Збережіть запит. Запустіть його.
Відкрийте в конструкторі запит По стоимости. Відсортуйте за вартістю. Виберіть всі операції, вартість поставки по яких перевищує 1000. Збережіть запит. Запустіть його.
5. Підсумкові запити.
Створіть новий запит, включивши в нього таблиці Приход товаров і Товары. Включіть в нього поле Наименование (товару) і створіть поле вартості, що обчислюється, як добуток значень полів Количество і Цена. Задайте ім'я поля Вартість. Запустіть запит і збережіть з ім'ям Итоговый запрос.
Скопіюйте запит Итоговый запрос двічі й перейменуйте в Сумма по групе товаров і Итого.
Для створення підсумкового запиту використовуйте Групові операції. Знайдіть:
У запиті Сумма по групе товаров – загальну вартість операцій по кожному найменуванню товарів. Збережіть запит. Запустіть його.
Рис. 4. Запит Сумма по группе товаров
У запиті Итого – загальну суму товарів по приходу. Збережіть запит. Запустіть його.
Рис. 5. Запит ИТОГО
6. Запити, що модифікують.
Існують три типи запитів, що модифікують: запити на видалення, запити на додавання, запити на відновлення.
Для
створення запиту, що модифікує, необхідно
створити запит і змінити його тип кнопкою
.
Зміни, які відбуваються в таблицях у
результаті виконання таких запитів, є
необоротними.
Створіть запит на відновлення, щоб збільшити на 20% ціну товарів із двома зазначеними найменуваннями з таблиці Товары. У бланку запиту досить включити поля Наименование (Товару) і Цена. Задайте умову відбору для Наименование з використанням операції Or, і формулу відновлення в стовпці Цена за допомогою Построителя Выражений ([Товары]![Цена]*1.2). Відкрийте форму для Товары й подивітеся ціну зазначених товарів, потім запустіть запит, і у формі Товары перегляньте нові ціни. Збережіть запит з ім'ям Изменение цены.
Аналогічно побудуйте запит для видалення для таблиці Приход товаров, щоб видалити із цієї таблиці всі записи, у яких дата менше тієї, яку Ви задасте. Увага! Спочатку відкрийте таблицю Приход товаров і виберіть, які записи (не більше двох) можна видалити, потім запустіть запит, і подивіться, які записи залишилися. Збережіть запит з ім'ям Удаление просроченных товаров.
7. Перехресні запити.
Перехресні запити, аналог зведених таблиць Excel, створюються на базі запитів. Використовуйте Многотабличный запрос (кнопка Создать у вікні Запросы / Перекрестный запрос, в якості функції обираємо функцію СУММА) для створення перехресних запитів для підведення підсумків за вартістю товарів:
З розбивкою по датах (Заголовок рядків – Дата, заголовок стовпців – Наименование). Збережіть з ім'ям Итоги по дате.
Рис. 6. Запит Итоги по дате
З розбивкою по постачальниках (Заголовок рядків – Наименование поставщика, заголовок стовпців – Наименувание товара). Збережете з ім'ям Итоги по поставщику.
Рис. 7. Запит Итоги по поставщику.