воскресенье, 19 апреля 2020 г.

Інформатика для груп 1-1, 2-2, 2-3 Урок 26. Тема: Запити на вибірку даних



Урок 26
Тема: Запити на вибірку даних

Ви дізнаєтеся:
v запити яких типів можна створити в середовищі СКБД MS Access;
v як створити запит на вибірку за допомогою Майстра;
v як можна змінити структуру запиту в режимі конструктора;
v як надрукувати результати запиту

Запити яких типів можна створити в середовищі СКБД MS Access?
Крім фільтрів та інструмента Пошук, у СКБД завдання пошуку даних також допомагають розв’язати запити.
Запит дає змогу вибрати необхідні дані з однієї або кількох зв’язаних таблиць, провести обчислення та одержати результат у вигляді таблиці, поновити дані в таблиці, створити нову таблицю, додати або видалити записи. Запити також використовують як джерело даних для форм і звітів.
Усі запити за результатами дії поділяють на дві групи:
1. Запити, за результатами виконання яких створюються нові таблиці й при цьому не вносяться зміни до джерел запитів, тобто до вихідних таблиць бази даних, її форм і звітів. До цієї групи запитів належать такі.
Запит на вибірку, при застосуванні якого виконується відбір деяких даних з таблиці чи декількох зв’язаних таблиць. Крім умов на вибірку можна задавати в таблиці нові поля, які будуть створені шляхом здійснення обчислень з даними, що зберігаються в одній чи декількох таблицях конкретної бази даних.
Отримані дані подаються у вигляді таблиці, що в подальшому дає змогу користувачеві створювати форми або звіти на основі запитів для подання даних у зручному вигляді. На відміну від фільтрів, які працюють лише в межах однієї таблиці й відображають у результаті всі її поля, запити дають змогу вибирати довільну кількість полів, причому в одному запиті можна розміщувати дані з різних зв’язаних таблиць.
Запит з параметром — є різновидом запиту на вибірку. Його доцільно використовувати при виконанні розрахунків в обчислювальних полях чи при формуванні критеріїв відбору потрібних даних тоді, коли значення деякого параметра, що входить до виразу для обчислення або умови відбору, заздалегідь не відоме. При кожному виконанні запиту з параметром користувачу потрібно з клавіатури вводити конкретне значення параметра, яке підставляється до обчислювального виразу.
Кількість параметрів може бути довільною.
Перехресний запит — використовується в разі, коли потрібно знайти спільні дані, які розміщуються в декількох зв’язаних таблицях.
2. Запити на дії, результат виконання яких передбачає зміну даних, що розміщуються в таблицях бази даних, які є джерелом запиту. Оскільки результати роботи цих запитів скасувати не можна, доцільно спочатку створювати запити на вибірку, а потім змінювати тип запиту на потрібний. До цієї групи належать такі запити.
Запит на створення нової таблиці — на відміну від запитів на вибірку, які створюють таблицю лише в оперативній пам’яті, створюється нова таблиця, що зберігається в базі даних.
Запит на оновлення — дає змогу автоматично змінювати значення деяких полів таблиці. Після встановлення типу запиту на оновлення в бланку запиту з’являється
додатковий рядок — Оновлення, у якому треба задати, які поля мають змінюватись і яким чином. Після виконання запиту дані таблиці-джерела будуть автоматично змінені, й повторний запуск запиту може призвести до небажаних змін.
Запит на доповнення — використовується в разі, коли треба об’єднати однорідні дані з двох таблиць однакової структури. У процесі виконання запиту на доповнення спочатку створюється запит-вибірка на основі тієї таблиці, з якої треба перенести дані до іншої, після чого потрібно вказати назву таблиці, до якої необхідно додати відпо-
відні записи.
Запит на знищення — дає змогу знищувати в таблиці-джерелі дані, що відповідають заданій умові. Такий запит є одноразовим, оскільки після знищення даних, що відповідають умові, повторний запуск такого запиту не знайде записів, які відповідали б заданій умові щодо знищення даних.
Особливістю запитів на дії є те, що їх створення та виконання складається з двох етапів — спочатку користувач створює запит на вибірку, що містить потрібні поля й записи, які відповідають певній умові, й лише після цього перетворює його в запит на дію та виконує ще раз. Це дає змогу уникнути помилок, оскільки результати роботи запитів на дії скасувати неможливо.
У середовищі СКБД MS Access об’єкт запит має три режими роботи.
Конструктор — побудова структури запиту за допомогою спеціальних інструкцій або внесення в раніше побудовану структуру змін і доповнень. Тобто це опис того, що необхідно отримати та в якому вигляді відобразити на екрані монітора або вивести на друк (мал. 19.1).

(мал.19.1)

Режим SQL — це спеціальний вид режиму Конструктор, який дає змогу за допомогою спеціальних інструкцій SQL (аналогічно до використання мови програмування) будувати запит більш складної конструкції, наприклад, за необхідності вибору даних, що зберігаються на сервері. Цей режим потребує від користувача набагато глибших вмінь і навичок використання MS Access 
(мал. 19.2).

(мал.19.2)
Подання таблиці — результат роботи запиту відповідно до сформованої структури (мал. 19.3).

(мал.19.3)
Як створити запит на вибірку за допомогою Майстра?
Для побудови запиту необхідно у вікні бази даних на вкладці Створити вибрати групу Запити та клацнути на кнопці Майстер запитів.
У вікні, що відкрилось, потрібно вибрати один зі способів для створення нового запиту:
простий запит — побудова запиту на вибірку за допомогою Майстра;
перехресний запит — створюється запит, у якому потрібні дані подаються у вигляді таблиці;
записи, що повторюються, — відбираються лише ті записи, у яких значення вказаних полів повторюються;
незв’язані записи — відбираються лише ті записи, які не мають зв’язків із записами інших таблиць.
За допомогою Майстра можна створити лише прості запити на вибірку, які не містять умов відбору та обчислювальних полів. При створенні простого запиту відображається діалогове вікно, у якому слід з однієї чи кількох зв’язаних таблиць, назви яких можна вибрати зі списку, що розкривається, вибрати поля, які необхідні для формування запиту, та перенести їх до області Вибрані поля в потрібній послідовності (мал. 19.4).

(мал.19.4)
На останньому кроці роботи Майстра залишається лише задати назву запиту. Усі інші параметри запитів можна налаштувати в режимі конструктора.

Самостійне завдання.
Вправа 1. Створення запиту за допомогою Майстра.
Завдання. У базі даних Магазини за допомогою Майстра створіть запит Продажі, що містить такі поля: Магазин з таблиці Магазини, Назва_фільму й Ціна_за_одиницю з таблиці Фільми та Кількість_продажів з таблиці Підсумок.
1. Відкрийте базу даних Магазини, що збережена в папці Бази даних на спільному ресурсі.
2. Оберіть вкладку Створення, на ній групу Запити та інструмент Майстер запитів.
3. У вікні Створення простих запитів у списку Таблиці й запити виберіть таблицю Магазини.
4. В області Доступні поля виділіть поле Магазин і натисніть кнопку, щоб перемістити одне виділене поле до області Вибрані поля.
5. У списку Таблиці й запити оберіть таблицю Фільми та перемістіть поля Назва_фільму й Ціна_за_одиницю до області Вибрані поля.
6. У списку Таблиці й запити оберіть таблицю Підсумок і перемістіть до області Вибрані поля поле Кількість_ продажів. Натисніть кнопку Далі.
7. На наступному кроці майстра виберіть режим Детальний (виведення кожного поля для кожного запису). Натисніть кнопку Далі.
8. У рядку введення введіть назву нового запиту —Продажі. Натисніть кнопку Готово.

Зразок виконання вправи 1. Створення запиту за допомогою Майстра.
 (Перегляньте уважно відео за посиланням)

або за QR кодом 















Як можна змінити структуру запиту в режимі конструктора?
Відкрити запит у режимі конструктора можна тими само способами, що й таблиці бази даних.
Бланк конструктора запитів поділено на дві частини: у верхній частині вказано таблиці, на основі яких створено запит, у нижній частині задаються всі параметри запиту, тобто його структура (мал. 19.5).
(мал.19.5)

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

Самостійне завдання.
Вправа 2. Зміна структури запиту в режимі конструктора.
Завдання. У режимі конструктора внесіть зміни в структуру запиту Продажі в базі даних Магазини, щоб відображались лише записи про фільми, продані в магазині Стиль, які упорядковані за зростанням за кількістю проданих копій.
1. Відкрийте вікно бази даних Магазини. В області навігації, що розташована в лівій частині робочої області, виберіть зі списку Запити. Клацніть правою кнопкою миші на запиті Продажі та виберіть з контекстного меню вказівку Конструктор.
2. На бланку запиту для поля Магазин у рядку Умова відбору введіть значення Стиль.
3. Для поля Кількість_продажів у рядку Сортування виберіть зі списку можливих значень за зростанням.
4. Натисніть кнопку «Вигляд», щоб відобразити результати виконання запиту на вибірку у вигляді таблиці. Переконайтеся, що знайдені записи відповідають умові.
5. Поверніться до режиму конструктора. На бланку запиту для поля Магазин у рядку Умова відбору замість слова Стиль введіть таке: [Введіть назву магазину].
6. Натисніть кнопку «Вигляд», у діалоговому вікні введіть назву Стиль і натисніть
клавішу Enter. Порівняйте отриманий результат з попереднім.
7. Закрийте вікно запиту та збережіть внесені зміни.

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

або за QR кодом


Як надрукувати результати запиту?
Результати запиту можна не тільки переглядати у вікні СКБД, а й роздрукувати. Для цього у списку об’єктів бази даних виділяють створений запит і виконують одну з дій:
1) Обирають вказівку Файл/Друк. Тоді формується документ, у якому зазначаються не тільки дані запиту у формі таблиці, а й дата виконання операції.
2) У контекстному меню обирають вказівку Експорт.
Обравши, наприклад, Файл Word RTF, отримаємо текстовий документ із таблицею результатів запиту, який можна редагувати та надрукувати засобами текстового процесора.
3) Створюють звіт, обравши вказівку Створити/Звіт. При цьому створюється звіт, до якого застосовано автоматичне форматування.
Роздрукувати звіт можна за допомогою вказівки Файл/Друк.


Інформатика для груп 1-1, 2-2, 2-3. Урок 25. Тема: Фільтрування даних.



Урок 25
Тема: Фільтрування даних.

Ви дізнаєтеся:
v як формувати умови при використанні фільтра для;
v як задати складені умови за допомогою фільтра Змінити фільтр;
v як користуватися Розширеним фільтром

Як формувати умови при використанні фільтра для?
Фільтр для викликається лише з контекстного меню відповідного поля
та вказівками Текстові фільтри або Фільтри чисел (мал. 18.9, мал. 18.10).
(мал.18.9)

(мал.18.10)
На відміну від фільтра за виділеним, можна задавати умову, не встановлюючи курсор на потрібне значення, отже, немає необхідності потрібне значення спочатку знаходити в таблиці. Крім того, фільтр для може використовувати групові

операції з використанням метасимволів * та ?, які дають змогу задати умови
типу «починається з…», «містить…» тощо. Для числових полів можна задати умови з використанням операторів відношення: >, >=, <, <=. Фільтр для також можна використовувати для різних полів, у такому разі умови пов’язуються логічним І, логічне АБО не використовують.

Самостійне завдання.
Вправа 2. Створення умов пошуку з використанням фільтра для.
Завдання. У таблиці Квитки бази даних Розклад руху літаків знайдіть, на які рейси квитки коштують менше 800 грн і є в наявності. Упорядкуйте дані за збільшенням вартості квитків.
1. Відкрийте базу даних Розклад руху літаків, що збережена в папці Бази даних на спільному ресурсі.
2. Відкрийте таблицю Квитки в режимі таблиці. У контекстному меню поля Тариф оберіть Фільтри чисел/Менше або дорівнює та введіть умову 800 
(мал. 18.11). Натисніть OK.

(мал.18.11)
3. У контекстному меню будь-якої клітинки поля Квитки оберіть значення Дорівнює «є».
4. Виділіть поле Тариф і натисніть кнопку Сортування за зростанням на панелі інструментів вікна програми.
5. Визначте кількість записів у таблиці, що відповідає вказаним умовам.
Закрийте таблицю Квитки.

Зразок виконання вправи 2. Створення умов пошуку з використанням фільтра для.
 (Перегляньте уважно відео за посиланням) https://www.youtube.com/watch?v=s5wzXky7iMY&list=PLafE3aTB6JO1xX_UlHgCOrK6mgCXWMNhI&index=47&t=0s

або за QR кодом













Як задати складені умови за допомогою фільтра Змінити фільтр?
Фільтр, що викликається вказівкою Додатково/Змінити фільтр, дає можливість скористатися вкладками Шукати та Або. На відміну від фільтрів перших двох типів, дає змогу задавати умови, які пов’язані логічним АБО, тобто здійснювати операцію об’єднання значень вибраних полів (мал. 18.12). 
(мал.18.12)

При формуванні умови можна використовувати як дані зі списку можливих значень, так й інші операції, наприклад: М*, >100. Таким чином, цей тип фільтра є розширенням перших двох, але не дає змоги виконувати обчислення.
За допомогою вибору списку будь-якого поля таблиці можна задавати умови, які пов’язані логічним АБО. Для цього потрібно залишити обраними лише потрібні унікальні значення відповідного поля.

Самостійне завдання.
Вправа 3. Використання фільтра для створення складених умов, пов’язаних логічною операцією АБО.
Завдання. У таблиці Рейси бази даних Розклад руху літаків знайдіть записи
про всі рейси, що прямують до міст Одеса, Брюссель або Варшава.
1. Відкрийте базу даних Розклад руху літаків, що збережена в папці Бази даних на спільному ресурсі.
2. Відкрийте таблицю Рейси в режимі таблиці. Оберіть список у полі Напрям, виберіть зі списку одне з можливих значень — Одеса.
3. У списку Додатково оберіть вказівку Змінити фільтр. У вкладках Шукати й Або послідовно введіть додаткові умови пошуку: Напрям — Брюссель, Напрям — Варшава (мал. 18.13).
(мал.18.13)
4. Визначте, скільки рейсів відповідають заданій умові (мал. 18.14).
(мал.18.14)
6. Перевірте, яким чином буде записано умову пошуку у вікні Рейси: Фільтрування за формою, якщо після застосування фільтра ще раз обрати Змінити фільтр. Закрийте таблицю.


Зразок виконання вправи 3. Використання фільтра для створення складених умов, пов’язаних логічною операцією АБО

(Перегляньте уважно відео за посиланням) https://www.youtube.com/watch?v=QRhz9zkMrXs&list=PLafE3aTB6JO1xX_UlHgCOrK6mgCXWMNhI&index=47

або за QR кодом












Як користуватися Розширеним фільтром?
Розширений фільтр дає змогу використовувати всі можливості розглянутих фільтрів, а також виконувати обчислення. Під час створення виразів, що при обчисленні мають звертатися до значень у певному полі таблиці, треба вказати назву цього поля, записану в квадратних дужках, наприклад [Прибуття].
Умови розширеного фільтра конструюються на спеціальному бланку
(мал. 18.15). 
(мал.18.15)
результатів будуть виводитися всі поля таблиці.
За допомогою розширеного фільтра можна також впорядковувати дані за одним чи декількома полями.


Самостійне завдання.
Вправа 4. Використання розширеного фільтра для впорядкування даних таблиці та створення складених умов.
Завдання. У таблиці Рейси бази даних Розклад руху літаків знайдіть записи про всі рейси, що здійснюються літаками марки ТУ або АН. Результати впорядкуйте за напрямом в алфавітному порядку, для кожного міста впорядкуйте дані за часом відправлення за зростанням.
1. Відкрийте базу даних Розклад руху літаків, що збережена в папці Бази даних на спільному ресурсі.
2. Відкрийте таблицю Рейси в режимі таблиці. Виконайте вказівку Додатково/Розширений фільтр…
3. На бланку розширеного фільтра в рядку Поле виберіть у першому стовпці
значення Напрям, у другому — Відліт, у третьому — Літак.
4. Для полів Напрям і Відліт у рядку Сортування виберіть зі списку значення
За зростанням.
5. Для поля Літак у рядку Умова відбору введіть умови (мал. 18.16).
(мал.18.16)
6. Виконайте вказівку Додатково/Застосувати фільтр.
7. Проаналізуйте отримані результати. Виконайте вказівку Видалити фільтр.

Зразок виконання вправи 4. Використання розширеного фільтра для впорядкування даних таблиці та створення складених умов.
 (Перегляньте уважно відео за посиланням) https://www.youtube.com/watch?v=QnZ-JTr2yOI&list=PLafE3aTB6JO1xX_UlHgCOrK6mgCXWMNhI&index=48

або за QR кодом