Присоединиться (SQL)


Предложение соединения в SQL , соответствующее операции соединения в реляционной алгебре, объединяет столбцы из одной или нескольких таблиц в новую таблицу. Стандартный ANSI SQL определяет пять типов JOIN: INNER, LEFT OUTER, RIGHT OUTERи FULL OUTER.CROSS

Department.DepartmentIDявляется первичным ключом таблицы Department, а Employee.DepartmentIDявляется внешним ключом .

Обратите внимание, что в Employee, «Уильямс» еще не был закреплен за отделом. Также в отдел «Маркетинг» не закреплены сотрудники.

CROSS JOINвозвращает декартово произведение строк из таблиц в соединении. Другими словами, он будет создавать строки, которые объединяют каждую строку из первой таблицы с каждой строкой из второй таблицы. [1]

CROSS JOINсам по себе не применяет никаких предикатов для фильтрации строк из объединенной таблицы. Результаты a CROSS JOINможно отфильтровать с помощью WHEREпредложения, которое затем может создать эквивалент внутреннего соединения.

В стандарте SQL:2011 перекрестные соединения являются частью дополнительного пакета F401 «Расширенная объединенная таблица».


Диаграмма Венна, показывающая закрашенный левый круг и перекрывающуюся часть.
Диаграмма Венна, представляющая оператор SQL Left Join между таблицами A и B.
Диаграмма Венна показывает правильный круг и закрашенные перекрывающиеся части.
Диаграмма Венна, представляющая оператор SQL Right Join между таблицами A и B.
Диаграмма Венна, показывающая закрашенный правый круг, левый круг и перекрывающуюся часть.
Диаграмма Венна, представляющая SQL-оператор полного соединения между таблицами A и B.