Applies ToAccess для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Іноді може знадобитися порівняти дві таблиці в Access та визначити записи в одній із таблиць, які не мають відповідних записів в іншій таблиці. Найпростіший спосіб визначити ці записи – скористатися майстром пошуку незв’язаних записів. Коли майстер створить запит, ви можете змінити його структуру: додати або вилучити поля, додати об’єднання між двома таблицями (щоб визначити поля, значення в яких мають збігатися). Крім того, ви також можете створити власний запит на пошук незв’язаних записів, не використовуючи майстер.

У цій статті показано, як запустити майстер пошуку незв’язаних записів, змінити його вихідні дані та створити власний запит на пошук незв’язаних записів.

У цій статті

Коли слід виконувати пошук незв’язаних записів

Нижче описано два стандартних випадки, у яких може виникати потреба в порівнянні двох таблиць і пошуку незв’язаних записів. Залежно від ситуації пошук незв’язаних записів може стати першим із кількох обов’язкових кроків. У цій статі описано лише пошук незв’язаних записів.

  • В одній таблиці зберігаються дані про певну річ (наприклад, товар), а в іншій – дані про дії (наприклад, замовлення), які передбачає ця річ.    

    Наприклад, у шаблоні бази даних Northwind 2007 дані про товари зберігаються в таблиці "Товари", а дані про товари, додані до кожного замовлення, – у таблиці "Замовлення". Оскільки (згідно зі структурою) у таблиці "Товари" немає даних про замовлення, визначити продукти, які ніколи не продавалися, лише виконавши пошук у ній, неможливо. Ці відомості також неможливо визначити в одній лише таблиці "Замовлення", оскільки вона містить лише дані про продані товари. Щоб визначити товари, які ніколи не продавалися, потрібно порівняти ці дві таблиці.

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

  • Є дві таблиці, які містять відомості, що перекриваються, є надлишковими або конфліктують між собою, і їх потрібно об’єднати в одну таблицю.    

    Припустімо, наприклад, що є одна таблиця під назвою "Замовники" та інша таблиця під назвою "Клієнти". Ці таблиці практично ідентичні, але одна або обидві таблиці містять записи, яких немає в іншій таблиці. Для консолідації цих таблиць слід спочатку визначити записи, які є унікальними в тій чи іншій таблиці.

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

    Часто, виконавши пошук повторюваних даних у кількох таблицях, можна вирішити проблему перекриття, надлишковості або конфлікту даних.

Докладні відомості про запити на об’єднання або про пошук, приховання чи усунення повторюваних даних див. в статтях, наведених у розділі Див. також.

Примітка.: Для прикладів у цій статті використано базу даних, створену за допомогою шаблону бази даних "Борей".

Процедура настроювання бази даних "Борей"

  1. На вкладці Файл виберіть пункт Створити

  2. Введіть у полі пошуку Northwind 2007 і виберіть відповідний шаблон або в області ліворуч у розділі Категорії шаблонів виберіть Локальні шаблони (це залежить від версії Access).

  3. У розділі Локальні шаблони виберіть Northwind 2007 і натисніть кнопку Створити.

  4. Дотримуйтеся вказівок на сторінці Northwind Traders (на вкладці об’єкта Початкова сторінка), щоб відкрити цю базу даних, а потім закрийте діалогове вікно входу.

Використання майстра пошуку незв’язаних записів для порівняння двох таблиць

  1. На вкладці Створення в групі Запити натисніть кнопку Майстер запитів

    Два параметри в групі "Запити" на стрічці Access: "Майстер запитів" і "Макет запиту"
  2. У діалоговому вікні Новий запит двічі клацніть пункт Майстер пошуку незв’язаних записів.

  3. На першій сторінці майстра виберіть таблицю, яка містить незв’язані записи, і натисніть кнопку Далі. Наприклад, щоб переглянути список продуктів у базі даних ­­"Борей", які ніколи не продавалися, виберіть таблицю "Products".

    Виберіть таблицю або запит у діалоговому вікні майстра пошуку незв’язаних записів
  4. На другій сторінці виберіть таблицю, пов’язану з першою таблицею, а потім натисніть кнопку Далі. Щоб виконати процедуру, описану у прикладі, виберіть таблицю "Відомості про замовлення".

    Виберіть таблицю або запит, які містять зв’язані записи, у діалоговому вікні майстра пошуку незв’язаних записів
  5. На третій сторінці виберіть поля, які зв’язують таблиці, натисніть кнопку < = >, а потім ­– кнопку Далі. У кожній таблиці можна вибрати лише одне поле. Щоб виконати процедуру, описану в прикладі, виберіть "Ідентифікатор" у таблиці "Товари" та "Ідентифікатор замовлення" в таблиці "Замовлення". Переконайтеся, що зіставлено правильні поля, переглянувши текст у полі Узгоджувальні поля.

    Виберіть відповідні поля в таблиці в діалоговому вікні майстра пошуку незв’язаних записів

    Зауважте, що, можливо, поля "ID" і "Product ID" уже вибрані через наявність зв’язків, вбудованих у шаблон.

  6. На четвертій сторінці клацніть двічі поля, які потрібно переглянути в першій таблиці, а потім натисніть кнопку Далі. Щоб виконати процедуру, описану у прикладі, виберіть поля "ID" і "Product Name".

    Виберіть поля, які потрібно відобразити в результатах запиту, у діалоговому вікні майстра пошуку незв’язаних записів
  7. На п’ятій сторінці можна, за бажання, переглянути результати або змінити структуру запиту. У цьому прикладі виберіть Переглянути результати. Прийміть пропоноване ім’я запиту та натисніть кнопку Готово.

    Введіть ім’я незв’язаних запитів у діалоговому вікні майстра пошуку незв’язаних об’єктів

    Ви можете змінити структуру запиту, щоб додати інші умови, змінити порядок сортування або додати або видалити поля. Відомості про змінення запиту знайти незв'язаних записів див. в наступному розділі; або, щоб отримати докладніші відомості про створення та змінення запитів, див. посилання в розділі Див. також .

Створення та змінення запиту на пошук незв’язаних записів для порівняння кількох полів

  1. На вкладці Створення в групі Запити натисніть кнопку Майстер запитів

  2. У діалоговому вікні Новий запит двічі клацніть пункт Майстер пошуку незв’язаних записів.

  3. На першій сторінці майстра виберіть таблицю, яка містить незв’язані записи, і натисніть кнопку Далі. Наприклад, щоб переглянути список продуктів у базі даних ­­"Борей", які ніколи не продавалися, виберіть таблицю "Products".

  4. На другій сторінці виберіть таблицю, пов’язану з першою таблицею, а потім натисніть кнопку Далі. Щоб виконати процедуру, описану у прикладі, виберіть таблицю "Відомості про замовлення".

  5. На третій сторінці виберіть поля, які зв’язують таблиці, натисніть кнопку < = >, а потім ­– Далі. У кожній таблиці можна вибрати лише одне поле. Щоб виконати процедуру, описану в прикладі, виберіть "Ідентифікатор" у таблиці "Товари" та "Ідентифікатор замовлення" в таблиці "Замовлення". Переконайтеся, що зіставлено правильні поля, переглянувши текст у полі Відповідні поля. Ви можете об’єднати поля, що залишилися, коли майстер завершить роботу.

    Зауважте, що, можливо, поля "ID" і "Product ID" уже вибрані через наявність зв’язків, вбудованих у шаблон.

  6. На четвертій сторінці клацніть двічі поля, які потрібно переглянути в першій таблиці, а потім натисніть кнопку Далі. Щоб виконати процедуру, описану у прикладі, виберіть поля "ID" і "Product Name".

  7. На п’ятій сторінці виберіть №№Змінити структуру й натисніть кнопку №№Готово.

    Запит відкриється в поданні конструктора.

  8. У сітці макета запиту зверніть увагу, що дві таблиці об'єднуються в поля (у цьому прикладі ідентифікатор і ідентифікатор продукту), указані на третій сторінці майстра. Створіть об'єднання для кожної пари пов'язаних полів, що залишилися, перетягнувши їх із першої таблиці (таблиці, яка містить незв'язані записи) до другої таблиці. У цьому прикладі перетягніть поле "Ціна за прейскурантом" з таблиці "Товари" до поля "Ціна за одиницю" з таблиці "Відомості про замовлення".

  9. Клацніть двічі об’єднання (лінію, що з’єднує поля), щоб відкрити діалогове вікно Параметри об’єднання. Для кожного об’єднання виберіть параметр, який включає всі записи з першої таблиці, і натисніть кнопку OK.

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

    Тип об’єднання можна визначити за стилем лінії.

    1. Коли ви створюєте об’єднання між полями "Ціна за прейскурантом" і "Вартість одиниці товару", воно обмежує виведення з двох таблиць. У результати запиту включаються лише записи, поля яких в обох таблицях містять однакові дані.

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

    Примітка.: Переконайтеся, що всі стрілки в об’єднаннях мають однаковий напрямок.

  10. У таблиці, яка містить пов’язані записи (у цьому прикладі це таблиця "Order Details") клацніть двічі кожне поле, об’єднане з першою таблицею, за винятком поля, вибраного на третій сторінці майстра (у цьому випадку це поле "Product ID"). Для кожного з цих полів зніміть прапорець у рядку Показати та введіть Null у рядку Умови.

  11. За необхідності можна додати умови до інших полів запиту або створити обчислювані поля, створені на основі значень із першої таблиці.

  12. На вкладці Конструктор запитів у групі Результати натисніть кнопку Виконати.

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

Створення власного запиту на пошук незв’язаних записів

  1. На вкладці Створити в групі Запити натисніть кнопку Конструктор запитів

  2. Двічі клацніть таблицю, яка містить незв'язані записи, і двічі клацніть таблицю, яка містить пов'язані записи.

  3. У сітці макета запиту дві таблиці мають бути сполучені лініями, які називаються об’єднаннями та з’єднують їх за пов’язаними полями. Якщо об’єднання відсутні, створіть їх, перетягнувши кожне пов’язане поле з першої таблиці (яка містить незв’язані записи) до другої таблиці (яка містить пов’язані записи).

  4. Двічі клацніть об’єднання, щоб відкрити діалогове вікно Параметри об’єднання. Для кожного об’єднання виберіть параметр 2 й натисніть кнопку OK.

    У бланку запиту на одному з кінців кожної лінії об’єднання з’явиться стрілка.

    Примітка.: Переконайтеся, що всі об'єднання вказують в одному напрямку. Запит не буде виконуватися, якщо об'єднання вказують у різних напрямках і можуть не виконуватися, якщо будь-яке об'єднання не є стрілкою. Об'єднання мають вказувати на таблицю, яка містить незв'язаних записів.

  5. У таблиці, яка містить незв’язані записи, клацніть двічі поля, які має повернути запит.

    За потреби введіть умови для будь-якого з цих полів або створіть обчислювані поля.

  6. У таблиці, яка містить пов’язані записи, клацніть двічі кожне поле, об’єднане з першою таблицею. Для кожного з цих полів зніміть прапорець у рядку Відображення та введіть Is Null у рядку Критерії.

  7. На вкладці Конструктор запитів у групі Результати натисніть кнопку Виконати.

Додаткові відомості

Створення простого вибіркового запиту

Пошук повторюваних записів за допомогою запиту

Об’єднання результатів кількох запитів за допомогою запиту на об’єднання

Потрібна додаткова довідка?

Потрібні додаткові параметри?

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

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.