Книга: Базы данных: конспект лекций

1. Операции объединения, пересечения, разности

1. Операции объединения, пересечения, разности

У любых операций есть свои правила применимости, которые необходимо соблюдать, чтобы выражения и действия не теряли смысла. Бинарные теоретико-множественные операции объединения, пересечений и разности могут быть применены только к двум отношениям обязательно с одной и той же схемой отношения. Результатом таких бинарных операций будут являться отношения, состоящие из кортежей, удовлетворяющих условиям операций, но с такой же схемой отношения, как и у операндов.

1. Результатом операции объединения двух отношений r1(S) и r2(S) будет новое отношение r3(S), состоящее из тех кортежей отношений r1(S) и r2(S), которые принадлежат хотя бы одному из исходных отношений и с такой же схемой отношения.

Таким образом, пересечение двух отношений – это:

r3(S) = r1(S) ? r2(S) = {t(S) | t ?r1 ?t ?r2};

Для наглядности, приведем пример в терминах таблиц:

Пусть даны два отношения:

r1(S):


r2(S):


Мы видим, что схемы первого и второго отношений одинаковы, только имеют различной количество кортежей. Объединением этих двух отношений будет отношение r3(S), которому будет соответствовать следующая таблица:

r3(S) = r1(S) ? r2(S):


Итак, схема отношения S не изменилась, только выросло количество кортежей.

2. Перейдем к рассмотрению следующей бинарной операции – операции пересечения двух отношений. Как мы знаем еще из школьной геометрии, в результирующее отношение войдут только те кортежи исходных отношений, которые присутствуют одновременно в обоих отношениях r1(S) и r2(S) (снова обращаем внимание на одинаковую схему отношения).

Операция пересечения двух отношений будет выглядеть следующим образом:

r4(S) = r1(S) ? r2(S) = {t(S) | t ? r1 & t ? r2};

И снова рассмотрим действие этой операции над отношениями, представленными в виде таблиц:

r1(S):


r2(S):


Согласно определению операции пересечением отношений r1(S) и r2(S) будет новое отношение r4(S), табличное представление которого будет выглядеть следующим образом:

r4(S) = r1(S) ? r2(S):


Действительно, если посмотреть на кортежи первого и второго исходного отношений, общий среди них только один: {b, 2}. Он и стал единственным кортежем нового отношения r4(S).

3. Операция разности двух отношений определяется аналогичным с предыдущими операциями образом. Отношения-операнды, так же, как и в предыдущих операциях, должны иметь одинаковые схемы отношения, тогда в результирующее отношение войдут все те кортежи первого отношения, которых нет во втором, т. е.:

r5(S) = r1(S) r2(S) = {t(S) | t ? r1 & t ? r2};

Уже хорошо знакомые нам отношения r1(S) и r2(S), в табличном представлении выглядящие следующим образом:

r1(S):


r2(S):


Мы рассмотрим как операнды в операции пересечения двух отношений. Тогда, следуя данному определению, результирующее отношение r5(S) будет выглядеть следующим образом:

r5(S) = r1(S) r2(S):


Рассмотренные бинарные операции являются базовыми, на них основываются другие операции, более сложные.

Оглавление книги


Генерация: 0.612. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз