- •Створення таблиць бази даних
- •Теоретичні відомості
- •1.1. Проектування бази даних
- •1.2. Створення таблиць з використанням Конструктора
- •1.3.2. Керуючий запит на створення таблиці
- •1.3.3. Запит на створення таблиці з інших таблиць
- •1.3.4. Запит на додавання
- •1.3.5. Запит на видалення
- •1.3.6. Запит на оновлення
- •Лабораторна робота №2 Проектування qbe-запитів
- •Теоретичні відомості
- •2.1. Прості запити
- •2.2. Конструктор запитів
- •2.3. Обчислення в запиті
- •2.4. Параметричні запити
- •2.5. Перехресні запити
- •Контрольні запитання
- •Лабораторна робота №3 Створення запитів на вибірку з допомогою мови sql
- •Теоретичні відомості
- •3.1. Структура запиту. Умови пошуку.
- •3.2. Параметричні запити
- •3.3. Перехресні запити
- •3.4. Пошук у зв'язаних таблицях
- •3.5. Агрегація даних і форматування результатів пошуку
- •3.6. Підлеглі запити
- •3.7. Запити на об'єднання
- •Контрольні запитання
- •Лабораторна робота №4 Створення форм
- •Теоретичні відомості
- •4.1. Автоформи
- •4.2. Створення форми за допомогою «Майстра форм»
- •4.3. Створення складеної форми
- •4.4. Створення діаграми
- •4.5. Додавання елементів управління у форму
- •Контрольні запитання
- •Лабораторна робота №5 Розробка звітів
- •5.1. Робота з простими звітами
- •5.2. Створення звіту за допомогою Майстра
- •5.3. Розробка звіту в режимі Конструктора
- •Контрольні запитання
- •Лабораторна робота №6 Створення бази даних побутової техніки
- •Список літератури
3.5. Агрегація даних і форматування результатів пошуку
Функції агрегації обчислюють єдине значення функції атрибуту для усіх вибраних рядків таблиці. У пропозиції select агрегатні функції не можуть обиратися одночасно з полями (за винятком використання виразу group by). У Access використовуються наступні функції агрегації: count - кількість значень в стовпці або число рядків в таблиці; sum - арифметична сума усіх вибраних значень цього атрибуту; avg - середнє значення для усіх вибраних значень цього атрибуту; мах і min - найбільше і найменше з усіх вибраних значень цього атрибуту; var і varp - зміщена і незміщена оцінки дисперсії; stdev і stdevp - зміщена і незміщена оцінки средньоквадратичного відхилення. У sum, avg, var, varp, stdev і stdevp можуть використовуватися тільки цифрові атрибути, в count, max і min - як цифрові, так і символьні. При використанні у функціях мах і min символьних атрибутів мається на увазі алфавітний порядок. Можна використовувати аргументи агрегатних функцій у вигляді скалярних виразів, що включають одне або декілька полів. При цьому не дозволяється застосовувати опцію distinct.
Наприклад, для отримання середнього балу по математиці в першому семестрі (код дисципліни 01), можна використовувати запит
Пропозиція group by замінює одним рядком групу рядків, що мають однакові значення для комбінації атрибутів, вказаної в пропозиції group by. В цьому випадку в пропозиції select можуть бути вказані тільки атрибути, що мають однакове значення в групі або групові функції. За наявності пропозиції group by агрегатні функції застосовуються окремо до кожної групи. Наприклад, для обчислення середнього балу кожного студента групи 01АО1 можна використати запит
У прикладі у вихідні дані запиту включений рядок 'Середній бал студента', яка виводитиметься в кожному рядку результату. У вихідні дані запиту можна також включати скалярні вирази з вибраними атрибутами.
Пропозиція having визначає, які згруповані записи відображуються при використанні інструкції select з пропозицією group by. У пропозиції having можуть бути присутніми тільки ті атрибути, які мають єдине значення для групи.
Наприклад, середній бал студентів групи 01АО1 можна отримати за допомогою запиту
Пропозиція order by упорядковує результати пошуку за збільшенням (asc за умовчанням) або зменшенням (desc) полів. Стовпці, за якими виконується сортування, повинні входити до числа стовпців, обраних в виразі select. Якщо в полі, яке використовується для сортування, існує NULL - значення, то рядки з таким значенням розташовуються на початку результату. Вираз order by можна використовувати спільно з group by для впорядкування груп. Вираз order by може містити декілька полів. Спочатку записи сортуються по першому полю в списку order by, потім записи, що мають співпадаючі значення в першому полі, сортуються по другому полю і так далі. Наприклад, список назв дисциплін і викладачів, що читають їх, можна отримати за допомогою запиту
Ми вже бачили, що у вихідні дані, вказані у інструкції select, можна включати рядки, які виводяться в кожному рядку результату, і скалярні вирази з обраними атрибутами.
