Студопедия

Главная страница Случайная лекция


Мы поможем в написании ваших работ!

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика



Мы поможем в написании ваших работ!




Реляционные выражения. Преобразования реляционных выражений

Результатом любой из рассмотренных в 3.1 операций над таблицами является таблица. Поэтому возможно построение реляционных выражений, в которых аргументом операции может быть не только явно указанная таблица, но и вложенное выражение. Для построения выражений важны приоритеты каждой операции.

Таблица Т1
Номер производителя Производитель Номер магазина Адрес
Hewlett Packard Ул. Некрасова, 21
Western Digital Ул. Некрасова, 21
IBM Ул. Некрасова, 21
Hewlett Packard Ленинский пр., 45
Western Digital Ленинский пр., 45

 

Таблица Т2
Номер магазина Адрес
Ул. Некрасова, 21
Ленинский пр., 45

 

Результирующая таблица Т1 / Т2
Номер производителя Производитель
Hewlett Packard
Western Digital

 

Рис. 3.10. Деление таблиц.

Для операций реляционной алгебры установлены следующие приоритеты:

Операция Приоритет
Переименование поля
Проекция
Селекция
Декартово произведение
Соединение
Пересечение
Деление
Объединение
Разность

Для изменения порядка выполнения операций, установленного приоритетами, в выражениях используются скобки.

Поскольку аргументами операций реляционной алгебры являются таблицы, для выполнения операций необходимо просмотреть и проанализировать все записи исходных таблиц. Следствием этого является большая размерность реляционных операций. Иногда можно достичь уменьшения размерности операций, изменив порядок их выполнения. При изменении порядка выполнения операций важно, чтобы не изменился результат. То есть преобразованное выражение должно быть эквивалентно исходному.

Два выражения реляционной алгебры считаются эквивалентными, если они описывают одну и ту же реляционную таблицу.

Существуют законы, которые в соответствии с этим определением позволяют выполнять эквивалентные преобразования выражений реляционной алгебры:

Законы коммутативности:

1. для декартовых произведений

Т1 ´ Т2 = Т2 ´ Т1

2. для соединений (У – условие соединения)

Т1 ><У Т2 = Т2 ><У Т1

Законы ассоциативности:

1. для декартовых произведений

(Т1´ Т2 ) ´ Т3 = Т1 ´ (Т2 ´ Т3)

2. для соединений (У1, У2 – условия соединений)

(Т1 ><У1 Т2 ) >< У2 Т3 = Т1 ><У1 (Т2 >< У2 Т3)

Законы комбинаций:

1. Каскад селекций (У1, У2 – условия селекций, And – логическое И)

sУ1 (sУ2 (Т)) = s У1 And У2 (Т)

2. Каскад проекций, {Am} и {Bn} – наборы полей для проекций, {Am} Ì {Bn}

p A1,A2,...,Am (p B1,B2,...,Bn(Т)) = p A1,A2,...,Am (Т)

Законы перестановок:

1. Селекция и проекция (У – условие селекции, {Am} – набор полей для проекции)

sУ (p A1,A2,...,Am (Т)) = p A1,A2,...,Am (sУ (Т))

2. Селекция и объединение (У – условие селекции)

sУ (Т1 U Т2)=sУ (Т1) U sУ (Т2)

3. Селекция и разность (У – условие селекции)

sУ (R1 – R2)=sУ (R1) – sУ (R2)

4. Проекция и декартово произведение {Am}, {Bk}, {Cn} – наборы полей для проекций, поля {Сn} принадлежат таблице Т1, поля {Bk} – таблице Т2, {Cn} Ì {Am}, {Bk} Ì {Am}

p A1,A2,...,Am ( Т1 ´ Т2 ) = p C1,C2,...,Cn(Т1) ´ p B1,B2,...,Bk(Т2)

5. Проекция и объединение, {Am} – набор полей из проекции

p A1,A2,...,Am ( Т1 U Т2 ) = p A1,A2,...,Am (Т1) U pA1,A2,...,Am (Т2)

6. Селекция и декартово произведение. Закон имеет несколько вариантов в зависимости от накладываемого условия селекции:

· Если условие наложено только на поля таблицы Т1

sУ (Т1 ´ Т2) = sУ (Т1) ´ Т2

· Если условие можно представить в виде У = У1 And У2, причем У1 наложено только на поля таблицы Т1, а У2 – только на поля таблицы Т2

sУ (Т1 ´ Т2) = sУ1(Т1) ´ sУ2 (Т2)

· Если условие можно представить в виде У = У1 And У2, причем У1 наложено только на поля таблицы Т1, а У2 – на поля обеих таблиц Т1 и Т2

sУ (Т1 ´ Т2) = sУ2 (sУ1( Т1) ´ Т2)


<== предыдущая страница | следующая страница ==>
Реляционная алгебра. 3.1. Операции над таблицами (операции реляционной алгебры) | Алматы, 2014

Дата добавления: 2015-06-30; просмотров: 200; Нарушение авторских прав




Мы поможем в написании ваших работ!
lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.004 сек.