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


Операция projection (проекция)


R[A1, A2, ... An] – это отношение, получаемое путем удаления из R всех столбцов за исключением тех, которые специфицируются атрибутами A1, A2, ... An, и последующего удаления избыточных строк-дубликатов.

Примеры PROJECTION:

R ( A B C ) R[A,B] (A B) p 1 2 p 1 p 2 1 p 2 q 1 2 q 1 r 2 5 r 2 r 2 3 R[B,C] ( B C ) R[B] ( B ) 1 2 1 2 1 2 2 5 2 3

Теперь мы можем определить третий класс отношений. Полувыводимые отношения – это такие отношения, у которых некоторая проекция (по крайней мере, с одним атрибутом) является выводимым отношением (см. о слабой избыточности в [5]). Если, например, R(A, B) является базовым отношением, S(A, C) – это такое отношение, что S[A] = (R[B = b])[A], и атрибут C определен на некотором домене, не используемом в каком-либо из базовых отношений (следовательно, отношение S не является выводимым), то S является полувыводимым отношением. Как мы увидим, существует много применений полувыводимых отношений. Заметим, что требование обеспечения минимальной избыточности при проектировании реляционных баз данных ничем не обусловлено, хотя это один из возможных вариантов. Таким образом, объявленные отношения наряду с базовыми отношениями могут включать полувыводимые и даже выводимые отношения.




Начало  Назад  Вперед



Книжный магазин