На базовом уровне отношения являются множествами. Следовательно, все операции над множествами являются допустимыми операциями реляционной алгебры. Операции над множествами применяются к отношениям, которые являются совместными по объединению. Два отношения совместны по объединению, если они содержат одинаковое количество столбцов, имеющих одинаковую область определения, и если столбцы расположены в одном и том же порядке слева направо.
Объединение. Если R и S есть отношения, то
возвращает все кортежи, которые встречаются или в R, или в S. Например, мы можем использовать операцию объединения для составления списка стран, которые либо расположены в Северной Америке, либо имеют реки, берущие исток на этом континенте.1.R = ?Name(?Cont=СА(Country)).
2. S = ?Origin(River).
3.
Результирующее отношение показано в таблице 3.4(а). Заметим, что атрибуты R.Name и S.Origin имеют общую область определения, поскольку атрибут R.Origin связан с Country.Name. Этого достаточно для того, чтобы отношения R и S были совместными по объединению.
Разность. R – S возвращает все кортежи в R, которые отсутствуют в S. Оператор разности может использоваться, например, для отыскания всех стран в Северной Америке, на территории которых нет истоков рек (перечисленных в таблице River). Результирующее отношение показано в таблице 3.4(б).
1. R = ?Name(?Cont=СА(Country)).
2. S = ?Origin(River).
3. R – S.
R | R.A | R.B |
A1 | B1 | |
A2 | B2 |
S | S.C | S.D |
C1 | D1 | |
C2 | D2 |
R ? S | R.A | R.B | S.C | S.D |
A1 | B1 | C1 | D1 | |
A1 | B1 | C2 | D2 | |
A2 | B2 | C1 | D1 | |
A2 | B2 | C2 | D2 |
НАЗВАНИЕ |
Канада |
Мексика |
Бразилия |
Куба |
США |
НАЗВАНИЕ |
Канада |
Мексика |
Куба |
НАЗВАНИЕ |
Бразилия |