Объединение (UNION)

В результате выполнения операции объединения отношенийR и S получается результирующее отношение REZ, в которое включаются кортежи, принадлежащие R или S, или им обоим (аналог теоретико-множественной операции ИЛИ). Повторяющиеся кортежи из результирующего отношения исключаются. Последнее справедливо для любой операции реляционной алгебры.

Математическая запись: REZ = R È S. Операция объединения применяется только к отношениям одинаковой арности, причем kREZ = kR = kS.

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

Например, для отношений-операндов R и S, схемы которых различны, результирующее отношение REZ будет безымянным:

R = A B C и S = D E F REZ = R È S = ½ ½

a b c b g a a b c

d a f d a f d a f

c c d c c d

b g a

Такое результирующее отношение получено при условии, что значения атрибутов (A,D) выбраны из одного домена, например, D1, а (B,E) - из домена D2 и (C,F) - из домена D3. Если принадлежность значений атрибутов доменам была бы другой, например, такой: (A, E) – домену D1, (B,D) – домену D2, (C,F) – домену D3, то прежде чем выполнять операцию объединения, нужно было бы переставить столбцы D и E в отношении S или – столбцы A и B в отношении R.

Если же схема отношений-операндов одинакова, то в результате получится отношение с такой же схемой.

Пример 2. Пусть отношение R - множество кортежей поставщиков, поставляющих деталь “d1”, а S - множество кортежей поставщиков из Москвы (из примера 1 в разделе 1.1):

R = PN, PIM, ST, GOR S = PN, PIM, ST, GOR

p1 Иванов 80 Москва p1 Иванов 80 Москва

p2 Петров 40 Самара

В этом примере схемы отношений одинаковые и REZ = R È S есть множество кортежей поставщиков, которые находятся в Москве, или поставляют деталь “d1”, или и то и другое:

REZ = PN, PIM, ST, GOR

p1 Иванов 80 Москва

p2 Петров 40 Самара

Используя эту операцию, можно к отношению REZ добавить новый кортеж, например, для поставщика из Петербурга (“p4”, “Морозов”, 100, “СПб”):

REZ = REZ È (“p4”, “Морозов”, 100, “ СПб ”)


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



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