Расширение реляционной модели для лучшего отражения семантики

Операция outer natural join (внешнее естественное соединение)


Пусть, как и ранее, заданы отношения R = R(A, B1) и S = S(B2, C), а также отношения T, R1 и S1, определенные так же, как выше, но с заменой "тета" на "=". Тогда внешнее естественное соединение R по B1 с S по B2

определяется как

R[B1 B2]S = T[A,B1,C] ∪ (R1 × (C:ω)) ∪ ((A:ω) × S1).

Пример операции OUTER NATURAL JOIN.

Пусть T(S#,CITY,J#) = S[SCITY JCITY]J, где отношения S и J представлены приведенными выше таблицами. Тогда:

T ( S# CITY J# ) s1 c4 ω

s2 c2 j2 s2 c2 j3 s4 c1 j1 s6 c1 j1 s7 c3 ω

ω c5 j4

При такой трактовке, если операция генерирует одно или более неопределенных значений, то эти значения всегда имеют тип "значение неизвестно в настоящее время", что согласуется с интерпретацией открытого мира (см. разд. 3). Если бы мы имели дело с отношениями, имеющими интерпретацию замкнутого мира, более уместным был бы тип неопределенного значения "свойство неприменимо".



Содержание раздела