Соединения. Рассмотрим некоторые виды соединения

Рассмотрим некоторые виды соединения.

1. Соединение по равенству, обычное или внутреннее соединение

Операция соединения по равенству определяет отношение, которое содержит кортежи из декартова произведения отношения R10 и R11, удовлетворяющие условию сочетаемых столбцов.

Пример: Показать всех сотрудников, их должности и оклады. Исходные данные отображены в таблицах 12 и 13, результат объединения указан в таблице 14.

SELECT Сотрудники. Код сотрудника, Сотрудники. Имя, Сотрудники. Фамилия, Сотрудники. Отчество, Должности. Название должности, Должности. Оклад

FROM Сотрудники, Должности

WHERE Сотрудники.Код должности=Должности.Код должности;

или

SELECT Сотрудники. Код сотрудника, Сотрудники. Имя, Сотрудники. Фамилия, Сотрудники. Отчество, Должности. Название должности, Должности. Оклад

FROM Сотрудники INNER JOIN Должности ON Сотрудники. Код должности = Должности. Код должности;

Таблица 12 - Отношение R10, исходное для операции соединение по равенству (таблица Сотрудники)

R10 – информация о сотрудниках
Код сотрудника Фамилия Имя Отчество Код должности
  Иванов Юрий Игоревич  
  Орлов Егор Петрович  
  Юрков Павел Антонович  
  Степанов Олег Сергеевич  
  Петров Сергей Олегович  
  Локтев Павел Сергеевич  

Таблица 13 - Отношение R11, исходное для операции соединение по равенству (таблица Должности)

R10 – информация о должностях
Код должности Название должности Оклад
  Программист  
  Администратор  
  Оператор  
  Машинист  
  Стажер  

Таблица 14 - Отношение R11, результат декартова произведения

R11 – информация о сотрудниках и их должностях и окладах
Код сотрудника Фамилия Имя Отчество Название должности Оклад
  Иванов Юрий Игоревич Программист  
  Орлов Егор Петрович Программист  
  Юрков Павел Антонович Программист  
  Степанов Олег Сергеевич Администратор  
  Петров Сергей Олегович Машинист  
  Локтев Павел Сергеевич Стажер  

2. Внешнее соединение

Операция внешнее соединение, при котором в результирующее отношение включаются также кортежи отношений, не имеющих совпадающих значений в общих столбцах. Для обозначения отсутствующих значений используется значение NULL. Внешние соединения делятся на полное внешнее соединение (FULL JOIN), левое внешнее соединение (LEFT JOIN) и правое внешнее соединение (RIGHT JOIN).

Пример правого внешнего соединения. Показать всех сотрудников, их должности и оклады. Исходные данные отображены в таблицах 9 и 10, результат объединения указан в таблице 12.

SELECT Сотрудники. Код сотрудника, Сотрудники. Имя, Сотрудники. Фамилия, Сотрудники. Отчество, Должности. Название должности, Должности. Оклад

FROM Сотрудники RIGHT JOIN Должности ON Сотрудники. Код должности = Должности. Код должности;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: