Реляционная алгебра: соединения, деление
Версия от 14:46, 14 декабря 2021; Masmirnov (обсуждение | вклад) (Структура страницы; полное соединение)
Содержание
Соединения
| Определение: |
| Соединение (англ. Join) — общее наименование для бинарных операторов на отношениях, позволяющих некоторым образом соединить данные из нескольких отношений в одно. |
Полное соединение
| Определение: |
| Полным, или декартовым соединением (англ. Cross join, Cartesian join) двух отношений и , у которых нет общих атрибутов, называется отношение, в котором заголовок является объединением заголовков и , а тело — декартовым произведением тел и . Обозначение: |
В случае, если у двух отношений есть хотя бы один общий атрибут в заголовке, их полное соединение не определено.
Пример
Рассмотрим два отношения:
| Id1 | FirstName |
|---|---|
| 1 | Иван |
| 2 | Пётр |
| 3 | Сидор |
| Id2 | LastName |
|---|---|
| 1 | Иванов |
| 3 | Петров |
| 4 | Сидоров |
Их полным соединением будет следующее отношение:
| Id1 | FirstName | Id2 | LastName |
|---|---|---|---|
| 1 | Иван | 1 | Иванов |
| 1 | Иван | 3 | Петров |
| 1 | Иван | 4 | Сидоров |
| 2 | Пётр | 1 | Иванов |
| 2 | Пётр | 3 | Петров |
| 2 | Пётр | 4 | Сидоров |
| 3 | Сидор | 1 | Иванов |
| 3 | Сидор | 3 | Петров |
| 3 | Сидор | 4 | Сидоров |
Естественное соединение
TODO
Внешние соединения
TODO
Полусоединения
TODO
Условные соединения
TODO
Деление
TODO