В.Н.Лукин. Базы данных. Конспект лекций, ред 3.51, 08.12.09
Определение. Если знак сравнения , а A и B – атрибуты, то говорят, что A -
сравним с B, если – бинарное отношение в dom(A) dom(B).
Определение. Атрибут A -сравним, если он -сравним сам с собой.
Расширим оператор выбора, используя понятие -сравнимости. Пусть r – отно-
шение со схемой R, атрибут A R, a dom(A) – константа, , A -сравним. Тогда
расширенный оператор выбора
A a
(r) = {t r | t(A) a}. Аналогично этот оператор
определяется для случая сравнения между атрибутами, с учетом того, что B R,
dom(B)=dom(A):
A B
= {t r | t(A) t(B)}.
Пример
Отношение время определяет время вылета рейса из аэропорта отправления и время
его прибытия в аэропорт назначения. Применим оператор выбора для нахождения рей-
сов, у которых время прибытия не превышает 12 часов, и рейсов, у которых время вы-
лета меньше времени прибытия, по крайней мере, на 2 часа (обозначим соответствую-
щую операцию как <<). Кортежи первой выборки (s), пометим символом «*», второй
(q) – «+».
s =
время прибытия 12.00
(время)
q =
время вылета << время прибытия
(время)
Конец примера
Эквисоединение – это расширенное соединение для сравнения разных столбцов на ра-
венство. Можно не ограничиваться равенством, а воспользоваться любой операцией
.
Определение. Пусть r(R) и s(S) – отношения, для которых R S = , и пусть A R и
B S -сравнимы для . Тогда -соединением называется отношение q(RS) = {t |
t
r
r, t
s
s, t(R) = t
r
, t(S) = t
s
, t
r
(A) t
s
(B)}, которое обозначается q(RS) = r [A B] s.
Пример
В приведенных отношениях заданы времена вылета и прилета самолетов, совершаю-
щих рейсы соответственно из пункта a в пункт b и из пункта b в пункт c. Требуется уз-
нать, какие рейсы могут проходить транзитом из города a в c через b.
транзит_ac = время_ab [прилѐт < вылет ]
N, прилѐт, вылет N , прилѐт , вылет
(время_bc) =
= транзит_ac