Добавил:
інстаграм _roman.kob, курсові роботи з тєрєхова в.в. для КІ Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторна робота №3.docx
Скачиваний:
21
Добавлен:
31.05.2020
Размер:
2.21 Mб
Скачать

Перехресний запит (Crosstab Query)

У Access можна створювати особливі типи запитів – перехресні. Вони відрізняються тим, що відображають сумарну інформацію в компактному та в зручному для читання вигляді. Перехресний запит створює з таблиці звичайну матрицю, яка описує відповідність значень одного поля значенням іншого поля в таблиці. Він надає кінцеву інформацію для вказаних полів у формі розрідженого масиву. По вертикалі такого масиву відображаються значення першого поля, по горизонталі – другого. На перетині відповідних рядка та стовпчика розміщується підсумкове значення, яке вираховується для поєднання їх в таблиці. Підсумкове значення може бути вибране в якості агрегатної функції типу сума, кількість, тощо. Для наочності нижче подано приклади перехресних запитів.

Результат роботи звичайного Select запиту

Результат роботи перехресного запиту (Crosstab Query)

Приклад 1.

Рис. 1. Результат виконання перехресного запиту

Перехресний запит, як і інші запити на вибірку, можна створювати двома способами: за допомогою Майстра запитів та використовуючи Конструктор запитів. Зазвичай швидше і легше створювати перехресні запити за допомогою Майстра запитів. Він виконує велику частину роботи, проте існує кілька параметрів, які він не підтримує.

При використанні майстра створення перехресних запитів необхідно в якості джерела записів для перехресного запиту вибрати тільки одну таблицю або один запит. Якщо дані, які потрібно включити до перехресного запиту, містяться в декількох таблицях, спочатку потрібно створити запит на вибірку, який повертає необхідні дані.

Для створення перехресного запиту за допомогою Майстра запитів виконайте такі дії:

в головному меню Microsoft Access 2010 у вкладці Создание виберіть розділ Запросы і натисніть кнопку Мастер запросов (рис.4);

у вікні Новый запрос, яке відкриється виберіть Перекрестный запрос і натисніть ОК (рис.5);

на першій сторінці Создание перекресных таблиц виберіть таблицю або запит, які слід використовувати для створення перехресного запиту і натисніть Далее (рис.24);

на наступній сторінці виберіть поле, що містить значення, які потрібно використовувати як заголовки рядків; як джерела заголовків рядків можна вибрати до трьох полів, проте чим менше використовується заголовків рядків, тим легше буде вивчати перехресну таблицю і натисніть Далее;

Рис. 24

на наступній сторінці виберіть поле, що містить значення, які потрібно використовувати як заголовки стовпців; зазвичай слід вибирати поле, що містить менше значень, щоб результати було зручно читати і натисніть Далее;  якщо для заголовків стовпців вибрано поле типу Дата/час, на наступній сторінці майстра буде запропоновано задати інтервал для групування дат (можливі варіанти: Рік, Квартал, Місяць, Дата і Дата/час); у іншому випадку ця сторінка майстра пропускається;  на наступній сторінці виберіть поле і функцію для розрахунку зведених значень; набір доступних функцій залежить від типу даних обраного поля; встановіть або зніміть прапорець Да , щоб відповідно включити до запиту або виключити з нього підсумкові значення по рядках і натисніть Далее; Примітка. Якщо підсумки рядків включені, в перехресний запит додається заголовок рядка, в якому використовуються ті ж поле і функція, що і для значення поля; при включенні підсумку по рядку вставляється додатковий стовпець, що містить зведені дані по решті стовпцях. Примітка. Функцію, що використовується для отримання підсумків по рядках, можна змінити, відредагувавши перехресний запит у режимі конструктора.

на наступній сторінці майстра введіть ім'я запиту і вкажіть, чи потрібно переглянути результати або змінити структуру запиту, натисніть Готово.

При створенні перехресного запиту в режимі конструктора можна використовувати будь-яку кількість джерел записів (таблиць і запитів). Однак для спрощення структури рекомендується спочатку створити запит на вибірку, який повертає всі необхідні дані, а потім використовувати цей запит в якості єдиного джерела записів для перехресного запиту.

Для створення перехресного запиту за допомогою Конструктора запитів потрібно виконати такі дії:

в головному меню Microsoft Access 2010 у вкладці Создание виберіть розділ Запросы і натисніть кнопку Конструктор запросов (рис.8);

з’явиться вікно Конструктора запитів, а в ньому вікно Добавление таблицы (рис.9); в цьому вікні виберіть таблиці чи запити, інформація з яких потрібна для створення нового запиту, і натисніть Добавить; після вибору всіх таблиць натисніть Закрыть.

в головному меню на вкладці Конструктор у групі Тип запроса натисніть Перекрестный;

у бланку запиту (рис. 25) виберіть поля (поле), які будете використовувати як джерело заголовків рядків (можна вибрати до трьох полів); в рядку Перекресная таблица для кожного поля заголовків рядків виберіть значення Заголовки строк;

Рис. 25

у бланку запиту (рис. 25) виберіть поле, яке будете використовувати як джерело заголовків стовпчиків (можна вибрати тільки одне поле); в рядку Перекресная таблица для поля заголовків стовпчиків виберіть значення Заголовки столбцов; Примітка. Можна ввести вираз у рядку Условие отбора, щоб обмежити число результатів для поля заголовків стовпчиків. Проте використання умовного виразу не обмежує число стовпчиків, що повертаються перехресним запитом. Обмеження стосуються того, в яких стовпчиках можуть міститись дані. Примітка. Щоб обмежити набір значень, що відображаються як заголовки стовпчиків, можна задати список фіксованих значень за допомогою властивостей запиту

у бланку запиту (рис. 25) виберіть поле, яке будете використовувати для розрахунку зведених значень (можна вибрати тільки одне поле); в рядку Перекресная таблица для поля заголовків стовпчиків виберіть елемент Значение; в рядку Групповая операция виберіть статистичну функцію, за допомогою якої слід обчислювати значення

Приклад 2.

Нехай необхідно скласти запит, який підраховує кількість замовлень, зроблених покупцями тої чи іншої країни для кожної конкретної дати.

Формат результату типового перехресного запиту

Дата замовлення

Бельгія

Бразилія

Канада

17.04.97

2

3

18.04.97

1

19.04.97

1

4

2

20.04.97

1

21.04.97

1

Рис. 2. Результат виконання перехресного запиту

Значення в колонках – кількість замовлень покупців конкретної країни в конкретний день.

Запити, що вносять зміни

При побудові нового запиту Access по замовчуванню створює запит на вибірку (Select). Щоб змінити цю установку слід скористатись меню конструктора запитів.

Запити, що вносять зміни можна використовувати для наступних цілей:

  • для видалення з таблиці або групи таблиць вказаних записів;

  • для додавання записів з одної таблиці в іншу;

  • для оновлення інформації в групі записів;

  • для створення нової таблиці з записів, вказаних в запиті.

Запити, що вносять зміни безпосередньо працюють з даними, і повернути зміни назад неможливо. Тому рекомендується:

  • створювати резервні копії таблиць перед виконанням запиту;

  • після створення запиту, що вносить зміни, перевірити його область дії перед виконанням (в панелі інструментів натиснути кнопку переходу в режим перегляду результуючої таблиці – DataSheet View).