Создание запроса на поиск записей, которые не имеют связанных в другом списке. Такие запросы называются Записи без подчиненных. Для создания таких запросов необходимо изменять тип объединения таблиц на внешний. При таком типе объединения в запрос обязательно включаются все записи из первой таблицы и к ним прибавляются поля из второй таблицы, если во второй таблице есть запись, для которой значения связанных полей совпадают. Если во второй таблице такой записи нет, то к записи из первой таблицы прибавляются поля с пустыми значениями. Внешнее объединение в конструкторе таблиц изображается линией со стрелкой.
Создайте запрос, который будет выдавать список книг, не выданных на руки читателям.
37. С помощью конструктора включите в запрос две таблицы Книги и Заказ книги. Включите в запрос поля Инв№, Шифр, Автор, Название из таблицы Книги и Инв№ из таблицы Заказ книги.
38. Найдите те записи, которые присутствуют в таблице Книги и отсутствуют в таблице Заказ книги. Для этого вначале измените Параметры объединения на Внешнее объединение. Для этого дважды нажмите на линии связи между таблицами. В окне диалога выберите второй тип – Объединение ВСЕХ записей из ‘Книги' и только тех записей из 'Заказ книги', в которых связанные поля совпадают.
Рисунок 26. Установка параметров объединения
Теперь создано внешнее объединение, в которое включены все книги из таблицы Книги.
39. Для тех книг, которые не имеют записей из таблицы Заказ книги устанавливается значение Null, поэтому для поля Инв№ из таблицы Заказ книги установим такие параметры Условие отбора – Is Null и Вывод на экран отсутствует.
Рисунок 27. Конструктор запроса Не выданные книги
40. Сохраните запрос с именем Не выданные книги. Выполните его и убедитесь, что запрос выбирает необходимую информацию.
Рисунок 28. Результат выполнения запроса Не выданные книги