![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
В реляционной алгебре рассматриваются две модификации данной операции: естественное соединение и соединение по условию (или q – соединение).
Естественное соединение
Определение
Естественным соединением отношений r1(R1), R1 = XY, и r2(R2), R2 = YZ, где Y – общее подмножество атрибутов из R1 и R2, определенных на одних и тех же доменах, называется отношение
s(R) = r1 r2, для которого:
- схема отношения R = R1 È R2 = XYZ,
- реализация отношения есть множество кортежей {t}, для которых pXY(t) Î r1 и pYZ(t) Î r2.
Формальная запись:
Даны r1(R1), R1 = XY, и r2(R2), R2 = YZ.
s(R) = r1 r2, R = R1 È R2 = XYZ, s = {t | таких, что pXY(t) Î r1 и pYZ(t) Î r2}
Пример:
r1 | (A | B | C) | r2 | (B | C | D) | ![]() | (A | B | C | D) | ||
a | b | c | b | c | d | a | b | c | d | |||||
d | b | c | b | c | e | a | b | c | e | |||||
b | b | f | a | d | b | d | b | c | d | |||||
c | a | d | d | b | c | e | ||||||||
c | a | d | b |
Соединение по условию
Определение
Даны два отношения r1(R1) и r2(R2), для которых в R1 и R2 нет атрибутов с одинаковыми именами, т.е. R1 Ç R2 = 0. Пусть атрибут A Î R1 сравним по условию q с атрибутом B Î R2 (условие q определяется так же, как предикат F в операции выбора). Тогда соединением отношений r1(R1) и r2(R2) по условию q называется отношение s(R) = r1A qB r2, для которого:
- схема отношения R = R1 È R2,
- реализация отношения есть множество сцеплений кортежей из r1 и r2, удовлетворяющих условию A q B.
Формальная запись:
Даны r1(R1) и r2(R2), R1 Ç R2 = 0.
s(R) = r1A qB r2, R = R1 È R2, s = {uv | таких, что u Î r1, v Î r2 и для u и v выполняется условие q}.
Атрибуты A и B могут быть составными, т.е. A = {A1, A2, …, An}, B = {B1, B2, …, Bn}. Тогда
A q B = [A1 q1 B1, A2 q2 B2, …, An qn Bn]. Операции qi могут быть разными. Например, пусть даны r1(A1, A2, A3) и r2(B1, B2, B3), и все атрибуты определены на числовых доменах. Тогда можно получить соединение по условию: s = r1 A1 < B1, A2 = B2, A3 ³ B3 r2
Пример:
r1 | (A | B | C) | r2 | (X | Y) | ![]() | (A | B | C | X | Y) | ||
Если в качестве операции q используется операция =, такое соединение по условию называется эквисоединением.
Дата публикования: 2014-11-26; Прочитано: 282 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!