Многотабличные запросы
В верхней части диалогового окна Join Condition (Условие объединения) размещены два раскрывающихся списка, содержащие поля, которые можно использовать для объединения таблиц. Ниже расположен переключатель Type of join (Тип объединения), содержащий опции, определяющие тип создаваемой между таблицами связи. Назначение опций описано в табл. 9.3.
Таблица 9.3. Назначение опций диалогового окна Join Condition.
Опция | Тип создаваемой связи |
---|---|
Inner join (Внутреннее объединение) | Создает объединение, в котором выбираются только те записи, которые содержат совпадающие значения в полях связи |
Left join (Объединение слева) | Создает объединение, в котором выбираются все записи из левой таблицы, а также записи из правой таблицы, значения поля связи которого совпадают со значениями поля связи левой таблицы |
Right join (Объединение справа) | Создает объединение, в котором выбираются все записи из правой таблицы, а также записи из левой таблицы, значения поля связи которого совпадают со значениями поля связи правой таблицы |
Full join (Полное объединение) | Создает объединение, в котором выбираются все записи из правой и левой таблиц |
Замечание
По умолчанию Visual FoxPro при объединении таблиц использует опцию Inner join (Внутреннее объединение), при которой из таблиц выбираются только те записи, которые содержат совпадающие значения в полях связи.
Замечание
В отличие от постоянных отношений, определяемых между таблицами в базе данных, при объединении таблиц в конструкторе запросов вы можете использовать любые поля таблиц.
Установленные между таблицами условия объединения можно изменять. Для этого выполните следующие действия:
- Дважды щелкните мышью на линии, связывающей таблицы, или на вкладке Join (Объединение) нажмите кнопку с двунаправленной стрелкой с левой стороны поля Type (Тип).
- В открывшемся диалоговом окне Join Condition (Условие объединения), отображающем текущее условие объединения таблиц, измените требуемые параметры.
- Нажмите кнопку ОК.
Совет
Для установления связи между таблицами в конструкторе запросов, как и в базе данных, можно использовать механизм "перенести-и-оставить". Выберите поле одной из таблиц, нажмите кнопку мыши и удерживая ее нажатой, перенесите поле на связываемое поле в другой таблице. После этого откройте диалоговое окно Join Condition (Условие объединения) и отредактируйте установленное условие объединения таблиц.