4. Выберите необходимые поля из двух макетов таблиц двойным щелчком кнопки мыши на названии поля (например, Имя , Телефон , Адрес , Товар , Количество ).
5. Если вы установите флажок Вывод на экран в столбце бланка запроса, отобразится данное поле запроса.
6. Вы также можете установить сортировку, для этого щелкните кнопкой мыши на параметре Сортировка в столбце бланка запроса нужного вам поля. В открывающемся списке выберите нужный вариант сортировки (рис. 5.20).
В листинге 5.2 приведен SQL-текст вашего запроса.
Листинг 5.2.
Запрос с внутренним соединением таблиц
SELECT Клиенты. Имя, Клиенты. Телефон, Клиенты. Адрес, Заказы. Товар, Заказы. Количество
FROM Клиенты INNER JOIN Заказы ON Клиенты. [Номер (ID)] = Заказы. Клиент;
7. Нажмите кнопку Сохранить на панели быстрого доступа, чтобы сохранить запрос. На экране появится окно ввода имени нового запроса.
8. В поле Имя запроса вы можете ввести название нового запроса. Затем нажмите кнопку ОК .
9. Щелкните кнопкой мыши на вкладке Конструктор , а затем нажмите кнопку Выполнить . Вы сможете увидеть результат измененного запроса (рис. 5.21).
Рис. 5.21. Результат запроса с внутренним соединением таблиц
Внешнее соединение таблиц
Внешние соединения таблиц могут быть двух видов – левые и правые. На языке SQL запрос с левым внешним соединением обозначается LEFT JOIN, а с правым – RIGHT JOIN. Запросы таблиц с левым внешним соединением отображают все записи первой таблицы, несмотря на то что имеются соответствующие им записи во второй таблице. Запросы с правым внешним обозначением работают наоборот.
Рассмотрите это на примере.
1. Откройте желаемую базу данных Microsoft Access 2007 ( Отдел продаж ).
2. Перейдите на вкладку Создания в группе Другие , нажмите кнопку Конструктор запросов . Будет создан новый запрос, и на экране вы увидите окно Добавление таблицы (см. рис. 5.7).
3. Перейдите на вкладку Таблицы и выберите нужную таблицу (например, Клиенты ), нажмите кнопку Добавить . Затем выберите другое имя таблицы (например, Заказы ) и также нажмите кнопку Добавить . По окончании данной процедуры нажмите кнопку Закрыть . Бланк запроса отобразится на экране, в верхней части которого вы увидите структуры таблиц и их связь.
4. Выберите необходимые поля из двух макетов таблиц двойным щелчком кнопки мыши (например, Имя , Телефон , Товар , Количество , Сумма ).
5. Если вы установите флажок Вывод на экран в столбце бланка запроса, отобразится данное поле запроса.
6. Вы также можете установить сортировку. Для этого щелкните кнопкой мыши на параметре Сортировка нужного вам поля. В раскрывающемся списке укажите подходящий тип сортировки. В результате вы получите бланк запроса.
7. Чтобы переключиться в режим SQL, на вкладке Конструктор в группе Результаты щелкните кнопкой мыши на стрелке под кнопкой Режим и в раскрывающемся списке выберите команду Режим SQL (см. рис. 5.13). При переключении в режим SQL откроется текст выбранного запроса (листинг 5.3).
Листинг 5.3.
Исходный текст запроса
SELECT Клиенты. Имя, Клиенты. Телефон, Заказы. Товар, Заказы. Количество, Заказы. Сумма
FROM Клиенты INNER JOIN Заказы ON Клиенты. [Номер (ID)] = Заказы. Клиент
ORDER BY Заказы. Сумма;
8. Найдите строку FROM, замените текст INNER JOIN выражением LEFT JOIN (листинг 5.4).
Листинг 5.4.
Запрос с левым внешним соединением
SELECT Клиенты. Имя, Клиенты. Телефон, Заказы. Товар, Заказы. Количество, Заказы. Сумма
FROM Клиенты LEFT JOIN Заказы ON Клиенты. [Номер (ID)] = Заказы. Клиент
ORDER BY Заказы. Сумма;
9. Нажав кнопку Сохранить на панели быстрого доступа, вы сохраните запрос. На экране появится окно ввода имени нового запроса.
10. В поле Имя запроса вы можете ввести название нового запроса. Затем нажмите кнопку ОК .