підсумковий запит. Для обчислення підсумкових значінь потрібно натиснути кнопку Групповые операциина панелі інструментів конструктора запитів, щоб у бланку QBE з’явився рядок Групповая операция.
Коли натиснути кнопку Групповые операции на панелі інструменті, Access використовує установку Группировкав рядку Групповая операция для любого поля, який занесений в бланк запиту. Тепер записи по кожному полю групуються, але підсумок не підводиться. Для отримання підсумків потрібно замінити установку Группировка в рядку Групповая операция на конкретну підсумкову функцію.
Access дає дев’ять функцій, які забезпечують виконання групових операцій. Можна ввести ім’я функції з клавіатури в рядку Групповая операция бланка запиту або вибрати її в списку, що розкривається. Нижче перераховані підсумкові функції Access:
Sum Вираховує суму всіх значень заданого поля в кожній групі. Використовується тільки для числових та грошових полів.
Avg Вираховує середнє арифметичне всіх значень даного поля в кожній групі. Використовується тільки для числових та грошових полів.
Min Повертає найменше значіння, яке знайдене в цьому полі всередині кожної групи. Для числових полів повертається найменше значення. Для текстових полів - найменше з символьних значень незалежно від регістру.
Max Повертає найбільше значіння, яке знайдене в цьому полі всередині кожної групи. Для числових полів повертається найбільше значення. Для текстових полів - найбільше з символьних значень незалежно від регістру.
Count.Повертає число записів, в яких значення даного поля відмінні від Null (пусто).
StDev.Вираховує стандартне відхилення всіх значінь даного поля в кожній групі. Ця функція використовується тільки для числових або грошових полів.
Var Вираховує дисперсію значінь даного поля в кожній групі. Ця функція використовується тільки для числових або грошових полів.
First Повертає перше значення цього поля в групі.
Last Повертає останнє значення цього поля в групі.
Якщо не потрібно включати в групи підсумкового запиту деякі записи, можна додати в бланк запиту одне або декілька полів для фільтра. Для створення фільтра треба в рядку Групповая операция вибрати установку Условие, зняти прапорець Вывод на экрандля цього поля і ввести умови відбору.
ПЕРЕХРЕСНІ ЗАПИТИ
Access підтримує особливий тип підсумкових запитів, який називається перехресними запитами. Вони дозволяють побачити обчислювані значення в вигляді перехресної таблиці, яка нагадує електронну.
Для побудови перехресного запиту потрібно виділити ім’я потрібної таблиці в вікні бази даних і вибрати Новый запросзі списку кнопки Новый объектна панелі інструментів. В вікні діалогу вибрати Конструктор, а потім у вікні конструктора вибрати команду Запрос/Перекрестный. Access додасть в бланк запиту рядок Перекрестная таблица. В цьому рядку для кожного поля перехресного запиту може бути вибрана одна з чотирьох установок: Заголовки строк, Заголовки столбцов, Значение(яке виводиться в чарунках перехресної таблиці) і Не отображается. Для перехресного запиту потрібно визначити у крайньому випадку одне поле в якості заголовків рядків, одне для заголовків стовпчиків і одне поле значень. Кожне поле, яке є заголовком стовпчиків, повинно мати в рядку Групповая операция установку Группировка. Для поля, яке використовується в якості заголовків рядків, в рядку Групповая операция повинна бути встановлена операція Группировка, вибрана одна з підсумкових функцій або введений вираз, який містить підсумкову функцію. Для поля з установкою Значениевибрати одну з підсумкових функцій або ввести вираз, який використовує підсумкову функцію.
Як і в інших типах підсумкових запитів, для відбору даних, які включаються у набір записів, можна використати додаткові поля. Для них необхідно вибрати установку Условиев рядку Групповая операция і Не отображается в рядку Перекрестная таблица, а потім ввести умову відбору. Умову відбору можна також задати для любого поля, яке використовується в якості заголовків стовпчиків, а дані можна сортувати по любим полям (з мовчазної згоди Access сортує заголовки стовпчиків за зростанням).
Можна визначити порядок стовпчиків в перехресній таблиці, використовуючи вікно властивостей запиту. Для цього треба клацнути в любому місці верхньої частини (ззовні списків полів) вікна запиту в режимі конструктора і натиснути кнопку Свойствана панелі інструментів. На екрані з’явиться вікно властивостей запиту.
Щоб задати порядок виводу стовпчиків в перехресній таблиці, потрібно ввести заголовки так, як вони виглядають в відформатованому вигляді, і в тій послідовності, в якій користувач хоче їх побачити. Потрібно впевнитися, що включені всі заголовки стовпчиків, які з’являються в підсумковій таблиці. Якщо пропущений який-небудь заголовок стовпчика або неправильно введене його ім’я, то він не з’явиться в перехресній таблиці.
Обмеження на використання запитів на вибірку для поновлення даних
Набір записів, які створює Access при виконанні запитів, виглядає і веде себе майже як реальна таблиця, яка містить дані. Дійсно, в багатьох випадках можна вставляти рядки, видаляти їх і поновлювати дані в наборі записів. При цьому Access внесе необхідні зміни в відповідні базові таблиці запиту.
Але в деяких випадках Access не розуміє, які зміни необхідно виконати. Розглянемо для прикладу обчислюване поле. Якщо користувач спробує змінити значення в підсумковому полі, яке є результатом перемноження двох довільних полів, Access не знає, яке з цих полів - він хоче змінити. В той же час можна змінити значення любого з цих полій і відразу отримати результат у підсумковому полі.
Access не дозволяє виконати зміни, які діють на декілька рядків базової таблиці. По цій причині не можна змінити дані в підсумковому або перехресному запиті. Access не дозволяє змінити дані в полі, яке має установку Avgабо Sum, тому що результат у цьому випадку визначається значеннями з багатьох записів.
При роботі з набором записів, які отримані в результаті об’єднання, Access дозволяє змінювати значення любих полів таблиці, яка знаходиться на боці відношення “багатьох”, але не дозволяє поновлювати ключові поля таблиці з боку “один”. Наприклад, один склад може мати багато товарів.