Запит із параметрами — це запит, у процесі виконання якого пропонується ввести деякі дані, наприклад умову, яку потрібно вставити в поле. Його ще називають запитом зі змінними критеріями.
За запитами з параметрами на початку їх виконання на екран виводяться повідомлення про необхідність уведення нового критерію (виразу). Методика створення запиту такого типу несуттєво відрізняється від методики створення звичайного запиту.
Розглянемо порядок створення такого запиту на прикладі 1.
Приклад 1. Розробити запит з іменем Запит_6, за допомогою якого з БД atb вибиратимуться прізвища працівників за посадами диспетчер і експерт із магазинів, номери яких уводяться при виконанні запиту. Результуючі записи мають містити поля Номер магазину й Адреса таблиці МАГАЗИНИ і поля Прізвище й Посада таблиці КАДРИ.
Порядок створення запиту може бути таким.
1. Відкриємо БД atb і виконаємо команду Створення → Макет запиту. Виділимо обидві таблиці, клацнемо кнопку Додати й закриємо вікно Відображення таблиці.
2. Із таблиці МАГАЗИНИ перенесемо в таблицю конструктора поля Номер магазину й Адреса, а з таблиці КАДРИ — поля Прізвище й Посада.
3. В умові завдання визначено, що за допомогою запиту мають відбиратися записи тільки за посадами диспетчер і експерт, тобто ця умова є незмінною. Тому в клітинку на перетині запису Критерії і поля Посада уводимо вираз "диспетчер" Or "експерт". Щоразу після запуску при виконанні запиту користувач може вводити будь-який номер магазину. Тому на перетині запису Критерії та поля Номер магазину можна увести, наприклад, текст [У якому магазині?]. Головне, щоб текст містився у квадратних дужках. У результаті отримаємо запит у режимі конструктора, як наведено на рис. 3.11.
Один запит може містити декілька параметрів у різних полях.
Для створення перехресного запиту потрібно використати щонайменше три поля:
• поле для визначення заголовка записів;
• поле для визначення заголовка полів;
• поле для вибору значень, над якими будуть виконуватися обчислення.
Перехресний запит — це запит на вибірку даних із можливостями групування записів.
Групування можна виконувати як за значеннями полів, так і за значеннями записів. Наприклад, із таблиці КАДРИ можна отримати кількість працівників на всіх посадах у кожному магазині. Як заголовки полів можуть бути використані й деякі вирази.
У режимі конструктора перехресний запит спочатку створюється як звичайний запит на вибірку даних, а потім установлюється режим перехресного запиту. Розглянемо порядок створення перехресного запиту на прикладі 2.
Приклад 2. Створити перехресний запит, за допомогою якого підраховуються працівники на кожній посаді в кожному магазині.
1. Створимо звичайний запит на вибірку даних у режимі конструктора. Для цього виконаємо команди Створити → Макет запиту → Додати → Закрити. Перенесемо в таблицю конструктора запиту поля Посада й Номер магазину. Виконаємо запит і переконаємося, що він функціонує правильно.
2. Перемкнемо запит у режим конструктора і перетворимо в тип перехресний. У групі Тип запиту клацнемо кнопку Перехресний. У таблиці конструктора запиту з’являться записи Підсумок і Перехресний. У записі Підсумок обох полів не змінюємо значення Групування за. Клацнемо клітинку на перетині поля Посада й запису Перехресний і виберемо зі списку, що розкриється, Заголовок рядка, а в полі Номер магазину цього самого запису — Заголовок стовпця.
3. У третє поле таблиці конструктора запиту перенесемо поле Номер магазину, у записі Підсумок якого встановимо функцію Кількість, а в записі Перехресний — Значення. У записі Сортування першого поля можна встановити потрібне сортування записів. Таблиця конструктора запиту матиме вміст, як наведено на рис. 3.14.
Практичне завдання. Працюємо у MS Access.
Увага! Під час роботи з комп'ютером дотримуйтеся вимог безпеки життєдіяльності та санітарно-гігієнічних норм.
Завдання для самостійного виконання
Створіть Запит61 із параметрами на основі таблиці УЧНІ, за допомогою якого виводяться прізвища учнів із різними улюбленими шкільними предметами, назви яких уводяться в процесі виконання запиту.
Створіть Запит62 із параметрами на основі таблиці УЧНІ, за допомогою якого виводяться прізвища учнів різного зросту, значення яких уводяться в процесі виконання запиту.
Створіть перехресний Запит63, за допомогою якого підраховується кількість учнів, які мають певний улюблений предмет, у всіх класах.
Створіть перехресний Запит64, за допомогою якого обчислюється кількість учнів окремо в кожному класі, зріст яких більший за 163 см.
Створіть Запит65 із параметрами на основі таблиці УЧНІ, за допомогою якого виводяться прізвища учнів, їхній улюблений предмет і номер класу, що вводяться під час виконання запиту.
Створіть перехресний Запит66, за допомогою якого обчислюється кількість учнів, які мають певний улюблений предмет, у кожному класі.