Вправа 22

До вашої уваги! У цій вправі вам доведеться мати справу з фільтрацією даних за допомогою спеціальних символів узагальнення. На Access'ах у різних кабінетах інформатики це працює по-різному. Приклад критерію: "Прізвище закінчується на [ко]"

  1. Ви пробуєте написати LIKE *ко. Якщо це працює, то добре
  2. Якщо помилка - пишете ALIKE %ко

Детальніше про відповідність різних символів узагальнення можна подивитися тут

Якщо вам потрібно робити чисельні порівняння (дата, кількість) - ніякі LIKE/ALIKE ви не використовуєте, використовуєте звичайні математичні оператори <, <=, >, >=

Підсумки

Буває так, що потрібно зібрати статистику за результатами пошуку за певними критеріями. Не рахувати ж вручну, скажімо, середнє арифметичне по якомусь полю? Ладно для 5-ти рядків ще можна порахувати, а якщо рядків 1005? В обох випадках нам на допомогу приходить інструмент під назвою "Підсумки", активується він натисканням на цей значок Σ.

vpr22_1

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

Розберемо на прикладах.

ПРИКЛАД 1. Порахуйте, скільки в середньому книжок прочитали читачі, ім'я яких починається на "Ан".

  1. Спочатку будуємо сам запит та виконуємо його

    vpr22_2
  2. Включаємо Підсумки (цифра 1), під результатами з'явивися рядок, на ньому під полем "Взято книг" клацаємо лівою кнопкою миші і ще раз, щоб відкрити випадаючий список (цифра 2), обираємо функцію (цифра 3), в нашому випадку це "Середнє"

    vpr22_3
  3. Бачимо, що в середньому читачі, ім'я яких починається на "Ан", взяли 4.5 книги

    vpr22_4

Параметризовані запити

Робити параметризований запит насправді дуже просто. Це означає, що критерій (або критерії) для запиту будуть не сталі, а можуть змінюватися інтерактично без потреби зміни самого запиту. На практиці це робиться таким чином: ви у конструкторі запиту у полі критерію у полі, яке має бути параметром, пишете звичайне запитання у [квадратних дужках]. При виконанні цього запиу Access виведе вам віконечко вводу самого критерію з вашим же запитанням. Увага на приклад:

ПРИКЛАД 2. Створіть параметризований запит на відображення інформації про книги (автор, назва, рік видання та інше на ваш розсуд), назва видавництва задається параметром!

  1. Будуємо запит з усіма полями, про які іде мова у завданні. У критерії поля, яке має задаватися параметром, пишемо питання у []. Виконуємо запит

    vpr22_5
  2. І при виконанні Access мене питає про значення:

    vpr22_6
  3. Результат:

    vpr22_7

Створити запити вибору та вивести підсумки.

  1. Запустіть СКБД Access.
  2. Скачайте/відкрийте базу даних з попередньої вправи
  3. Запит10: за допомогою підсумків визначте кількість книг, які взяв Денис Щербина.

    Потрібно саме вирахувати, скільки книг взяв читач (через інші таблиці), ігноруючи поле "Взято книг"!

  4. Запит11: за допомогою підсумків визначте середній рейтинг книг, які взяла Ольга Андрєєва.
  5. Запит12: створіть параметризований запит на відображення імен, прізвищ читачів та дат їх реєстрації. Ім'я та прізвища задаються параметрами!
  6. Запит13: за допомогою підсумків порахуйте середній рік видання книг, які видало видавництво "Літературна Україна"
  7. Запит14: за допомогою підсумків порахуйте кількість читачів, які взяли більше 2-х книг та зареєструвалися в 2017 році

Збережіть вашу БД у Документи і ДОПИШІТЬ до імені число 22 та своє прізвище. Наприклад, Бібліотека_22_Петренко.accdb. Завантажте цей файл на хмарне сховище. Зверніть увагу, що треба завантажити файл з розширення .accdb!!!