Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
применимо к:SQL Server
Если таблицы присоединены, средства конструктора запросов и представлений (визуальные инструменты базы данных) представляют графическое соединение в области диаграммы (визуальные инструменты для баз данных) и с помощью синтаксиса SQL в области SQL (визуальные инструменты базы данных).
Область диаграммы
На панели "Схема" конструктор запросов и представлений отображает линию соединения между столбцами данных, участвующими в соединении. Конструктор запросов и представлений отображает одну строку соединения для каждого условия соединения. Например, на следующем рисунке показана линия соединения между двумя таблицами, присоединенными:
Если таблицы объединяются с помощью нескольких условий соединения, конструктор запросов и представлений отображает несколько строк соединения, как показано в следующем примере:
Если присоединенные столбцы данных не отображаются (например, если прямоугольник, представляющий таблицу или табличный структурированный объект, свернут или если соединение включает выражение), конструктор запросов и представлений помещает линию соединения в строку заголовка прямоугольника, представляющего таблицу или табличный структурированный объект.
Форма значка в середине строки соединения указывает, как объединяются таблицы или структурированные таблицы. Если предложение соединения использует оператор, отличный от равного (=), оператор появится на значке строки соединения. В следующей таблице перечислены значки, которые отображаются в строке соединения.
Значок соединения линий | Описание |
---|---|
![]() |
Внутреннее соединение (созданное с помощью знака равенства = ). |
![]() |
Внутреннее соединение с использованием оператора "больше чем" > . |
![]() |
Внешнее соединение, в котором включены все строки из таблицы, представленной слева, даже если они не имеют совпадений в связанной таблице. |
![]() |
Внешнее соединение, в котором все строки из таблицы, представленной справа, включаются, даже если они не имеют совпадений в связанной таблице. |
![]() |
Полное внешнее соединение, в котором включены все строки из обеих таблиц, даже если они не имеют совпадений в связанной таблице. |
Символы на концах строки соединения указывают тип соединения. В следующей таблице перечислены типы соединений и значки, отображаемые на концах строки соединения.
Значок на концах линии соединения | Тип соединения |
---|---|
![]() |
Присоединение один к одному. |
![]() |
Соединение "один ко многим". |
![]() |
Конструктор запросов и представлений не может определить тип соединения. Эта ситуация чаще всего возникает при создании соединения вручную. |
Область SQL
Соединение можно выразить несколькими способами в инструкции SQL. Точный синтаксис зависит от используемой базы данных и от того, как вы определили соединение.
Варианты синтаксиса для объединения таблиц включают:
JOIN
квалификатор дляFROM
условия. Ключевые слова INNER иOUTER
задают тип соединения. Этот синтаксис является стандартным для ANSI 92 SQL.Например, если вы объединяете таблицы
publishers
иpub_info
на основе столбцаpub_id
в этих таблицах, итоговый SQL-запрос может выглядеть следующим образом:SELECT * FROM publishers INNER JOIN pub_info ON publishers.pub_id = pub_info.pub_id;
Если вы создаете внешнее соединение, слова
LEFT OUTER
илиRIGHT OUTER
отображаются вместо слова INNER.WHERE
предложение сравнивает столбцы в обеих таблицах. ПредложениеWHERE
отображается, если база данных не поддерживаетJOIN
синтаксис (или если вы ввели его самостоятельно). Если соединение создается вWHERE
предложении, оба имени таблицы отображаются в предложенииFROM
.Например, следующая инструкция объединяет таблицы
publishers
иpub_info
.SELECT * FROM publishers, pub_info WHERE publishers.pub_id = pub_info.pub_id;