Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
database.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.12 Mб
Скачать

Раздел 2. Реляционная алгебра Тема1: Реляционная алгебра. Классические операции теории множеств.

  1. Классические операции теории множеств.

    1. Объединение

    2. Вычитание

    3. Пересечение

    4. Произведение

1. Классические операции теории множеств.

Операции реляционной алгебры Кодда можно разделить на две группы:

  • базовые теоретико-множественные;

  • специальные реляционные.

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

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

Операции реляционной алгебры могут выполняться над одним отношением (например, проекция) или над двумя отношениями (например, объединение). В первом случае операция называется унарной, а во втором — бинарной. При выполнении бинарной операции участвующие в операциях отношения должны быть совместимы по структуре.

Совместимость структур отношений означает совместимость имен атрибутов и типов соответствующих доменов.

Объединением двух совместимых отношений R1 и R2 одинаковой размерности (Rl UNION R2) является отношение R, содержащее все элементы исходных отношений (с исключением повторений).

Пример 1. Пусть отношением R1 будет множество поставщиков из Лондона, а отношение R2 — множество поставщиков, которые поставляют деталь Р1. Тогда отношение R обозначает поставщиков, находящихся в Лондоне, или поставщиков, выпускающих деталь Р1, либо тех и других.

Таблица 1

Отношение R1

П#

Имя

Статус

Город_п

S1

Сергей

20

Москва

S2

Николай

20

Москва

Таблица 2

Отношение R2

П#

Имя

Статус

Город_п

S1

Сергей

20

Москва

S2

Иван

10

Киев

Отношение R(R1 UNION R2) – результирующее отношение содержит все элементы исходных отношений

Таблица 3

П#

Имя

Статус

Город_п

S1

Сергей

20

Москва

S2

Иван

10

Киев

S4

Николай

20

Москва

Вычитание (разность) совместимых отношений R1 и R2 одинаковой размерности (Rl MINUS R2) есть отношение, тело которого состоит из множества кортежей, принадлежащих R1, но не принадлежащих отношению R2.

Для тех же отношений R1 и R2 из примера 1 отношение R будет представлять собой множество поставщиков, находящихся в Лондоне, но не выпускающих деталь Р1, т. е. R={(S4, Николай, 20, Москва)}.

Таблица 4

П#

Имя

статус

Город_п

S4

Николай

20

Москва

Пересечение двух совместимых отношений R1 и R2 одинаковой размерности (Rl INTERSECT R2) порождает отношение R с телом, включающим в себя кортежи, одновременно принадлежащие обоим исходным отношениям.

Для отношений R1 и R2 результирующее отношение R будет означать всех производителей из Лондона, выпускающих деталь Р1. Тело отношения R состоит из единственного элемента (S1, Сергей, 20, Москва).

Таблица 5

П#

Имя

статус

Город_п

S1

Сергей

20

Москва

Произведение отношения R1 степени к1 и отношения R2 степени к2 (Rl TIMES R2), которые не имеют одинаковых имен атрибутов, есть такое отношение R степени (к1+к2), заголовок которого представляет сцепление заголовков отношений R1 и R2, а тело — имеет кортежи, такие, что первые к1 элементов кортежей принадлежат множеству R1, а последние к2 элементов — множеству R2.

Пример 2.

Пусть отношение R1 представляет собой множество номеров всех текущих поставщиков {SI, S2}, а отношение R2 — множество номеров всех текущих деталей {Р1, Р2}. Результатом операции R1 TIMES R2 является множество всех пар типа «поставщик — деталь», т. е. {(S1.P1), (S1.P2), (S2.P1), (S2.P2)}.

Таблица 6

Отношение R1

П#

Имя

Город_п

S1

Сергей

Москва

S2

Николай

Москва

Таблица 7

Отношение R2

Р#

название

тип

P1

Гайка

Каленый

P2

Угол

Твердый

Результирующее отношение R (R1 TIMES R2) – тело состоит из кортежей – множества всех пар.

Таблица 8

П#

Имя

Город_п

Р#

название

тип

S1

Сергей

Москва

P1

Гайка

Каленый

S1

Сергей

Москва

P2

Угол

Твердый

S2

Николай

Москва

P1

Гайка

Каленый

S2

Николай

Москва

P2

Угол

Твердый

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]