Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_15-27.doc
Скачиваний:
42
Добавлен:
18.03.2015
Размер:
913.92 Кб
Скачать

Завдання

Створіть не менш десяти запитів на вибірку до бази даних, розробленої Вами раніше на попередній лабораторній роботі, причому не менш п'яти з них повинні містити оператори або функції, описані вище.

Контрольні питання

    1. Що таке запит?

    2. Чим запити відрізняються від фільтрів?

    3. Який принцип покладений в основу Конструктора запитів?

    4. Як додаються, змінюються й віддаляються поля й таблиці в Конструкторі запитів?

    5. Як реалізуються складні запити, що містять складні умови?

Лабораторна робота № 22 Створення запитів з параметрами. Використання статистичних функцій у запиті

Мета: вивчити принципи побудови запитів на вибірку з параметрами;

вивчити принципи побудови запитів на вибірку з використанням статистичних функцій.

Теоретична частина

На минулому занятті ви створювали запити до власної бази даних.

Для створення запитів із заданою умовою відбору ви заповнювали поле Умова відбору конкретним значенням. При бажанні подивитися інші варіанти цього запиту потрібно змінити умову відбору. Щоб не міняти умову відбору щораз, можна створити запит, у якому вводиться условие, що, буде параметром, запитуваним при виконанні.

1. Відкрийте ваш запит у режимі Конструктора.

2. У рядок Умови відбору (Criteria) для потрібного стовпця введіть замість конкретного значення запрошення до уведення параметра [Ім'я Параметра:]. Запрошення повинне бути обов'язково укладене у квадратні дужки, ім'я параметра закінчується двокрапкою.

3. Запустите запит, нажавши кнопку Вид (View). З'явиться діалогове вікно з уведеним вами запрошенням до уведення параметра.

1. Уведіть конкретне значення, що є в базі й натисніть ОК. У результуючу безліч запиту потраплять всі записи, що збігаються за значенням із введеным.

5. Закрийте й збережете запит.

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

Параметри можна комбінувати з усіма операторами, вивченими вами в попередній лабораторній роботі. Наприклад, щоб задати умова відбору даних не по одному значенню, а по його інтервалі, можна скористатися оператором between [параметр1:] and [параметр2:]. Щоб відібрати запису по більшому/меншому значенню, можна використовувати оператори < і >, наприклад, <[параметр:]

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

Функція

Опис

Avg()

Обчислює арифметичне середнє набору чисел, що втримуються в зазначеному полі запиту

Count()

Обчислює кількість непустих записів, що повертаються запитом

First()

Повертає значення поля з першого запису результуючого набору

Last()

Повертає значення поля з останнього запису результуючого набору

Max()

Повертає максимальне значення з набору, що втримується в зазначеному полі

Min()

Повертає мінімальне значення з набору, що втримується в зазначеному полі

Sum()

Повертає суму набору значень, що втримуються в заданому полі

Var()

Повертає дисперсію для всіх значень у зазначеному вираженні. Функція VARP() дисперсію по вибірці

StDev()

Повертає стандартне статистичне відхилення для всіх значень у зазначеному вираженні.

Функція STDEVP повертає стандартне статистичне відхилення по вибірці

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

  1. Виділите запит у списку запитів.

  2. Клацніть на кнопці ? Групові операції (Totals) на панелі інструментів. У бланк запиту додається рядок Групова операція (Total), що містить за замовчуванням у кожному осередку значення Угруповання (Group By).

  3. Для одного поля залишіть значення Угруповання (Group By), для іншого виберіть зі списку функцію Count.

  4. Натисніть кнопку Запуск (Run) на панелі інструментів для перегляду результатів запиту.

У попередньому прикладі розрахунки вироблялися над всіма наявними в таблиці записами. Однак іноді потрібно виконати обчислення тільки над відібраним набором записів. Для цього потрібно додати в запит умови для відбору. Змінимо попередній запит таким чином, щоб одержати дані не по всіх розділах, а тільки по одному, назва якого введемо як параметр.

  1. Перемкнетеся знову в режим Конструктора.

  2. Уведіть у рядок поля з угрупованням у рядок Умови відбору (Criteria) рядок: [параметр:].

  3. За замовчуванням Access привласнює параметрам запиту тип даних Текстовий, тому текстові параметри можна не перераховувати в діалоговому вікні Параметри запиту, досить указати їх в умові відбору.

  4. Натисніть кнопку Запуск (Run).

  5. Уведіть у вікно Введіть значення параметра (Input Parameter Value) значення параметра.

Статистичні функції при обчисленнях не обробляють записи, що мають значення Null у тім полі, до якого вони застосовуються. Тому будьте обережні при використанні функції Count(). Вона буде вважати тільки записи, що не містять порожніх значень. Якщо потрібно порахувати всі записи в результуючому наборі або групі, потрібно застосувати функцію Nz(<ім'я поля> ), що перетворить порожнє значення в 0.

У даному прикладі умова відбору додавалося в той стовпець, по якому виробляється угруповання, але так буває не завжди. Припустимо, потрібно підрахувати, скільки книг по кожному розділі перебуває у великій кімнаті (відбір ведеться по полю Кодместа - Місце зберігання). У такому випадку потрібно додати це поле в бланк запиту й установити для нього в рядку Групова операція (Total) значення Умова (Where).