Многотабличные запросы.



    Одна из  наиболее  важных особенностей запросов SQL - это их способность создавать объединения двух (или более) таблиц, включающие данные из обеих таблиц.
    Обычно таблицы объединяются в соответствии с их взаимосвязями (чаще всего между первичным ключом одной таблицы и внешним ключом другой).
 
    В Visual FoxPro можно создавать следующие виды объединений:
            INNER JOIN - в объединение включаются записи, содержащие совпадающие значения в полях связи;
            LEFT JOIN - в объединение включаются все записи  из левой таблицы и записи из правой таблицы с совпадающим значением поля связи;
            RIGHT JOIN - аналогично LEFT JOIN с заменой левой таблицы на правую и наоборот;
            FULL JOIN - все записи из обеих таблиц.

    FROM Таблица1 INNER JOIN Таблица2 ON Таблица1.Поле1=Таблица2.Поле2
           где Таблица1,2 - имена таблиц, из которых выбираются записи;
                    Поле1,2 - имена полей, по которым создается объединение.
 
    Вложенные объединения
        Visual FoxPro позволяет создавать вложенные объединения:
 
        SELECT список_полей
            FROM Таблица1 INNER JOIN
            (Таблица2 INNER JOIN [ ( ] Таблица3
                [INNER JOIN [ ( ] Таблица4 [INNER JOIN ... ) ]
                ON Таблица3.Поле3=Таблица4.Поле4 ) ]
                ON Таблица2.Поле2=Таблица3.Поле3 )
                ON Таблица1.Поле1=Таблица2.Поле2 ;