Соединение

1. Выборка (R WHERE f) отношения R по формуле f представляет собой новое отношение с таким же заголовком и телом, состоящим из таких кортежей отношения R, которые удовлетворяют истинности логического выражения, заданного формулой f. Для записи формулы используются операнды — имена атрибутов (или номера столбцов), константы, логические операции (AND — И, OR — ИЛИ, NOT — НЕ), операции сравнения и скобки.

Пример 1. Пусть дано отношение R1, которое содержит сведения о деталях, материалах, из которых они изготавливаются, вес каждой детали и города, в которых выпускаются эти детали. Необходимо получить сведения о деталях, изготовленных из каленого материала с весом не более 13.

Таблица 1

R1

Р# название тип вес
P1 Гайка Каленый  
P2 Угол Твердый  
P3 Шайба Каленый 10,5
P4 Болт Каленый  
P5 Гайка Твердый  

Результирующее отношение

Таблица 2

R (R1 WHERE тип = «каленый» AND вес <13)

Р# название тип вес
P1 Гайка Каленый  
P3 Шайба Каленый 10,5

2. Проекция отношения А на атрибуты X, Y,..., Z (А [X, Y,..., Z]), где множество {X, Y,..., Z} является подмножеством полного списка атрибутов заголовка отношения А, представляет собой отношение с заголовком X, Y,..., Z и телом, содержащим кортежи отношения А, за исключением повторяющихся кортежей. Повторение одинаковых атрибутов в списке X, Y,..., Z запрещается.

Операция проекции допускает следующие дополнительные варианты записи:

- отсутствие списка атрибутов подразумевает указание всех атрибутов (операция тождественной проекции);

- выражение вида R [ ] означает пустуюпроекцию, результатом которой является пустое множество;

- операция проекции может применяться к произвольному отношению, в том числе и к результату выборки.

Пример 2. На основании отношения R1 создана проекция R(R1 whereТип = «каленый») [название]

Таблица 3

название тип
Гайка Каленый
Шайба Каленый
Болт Каленый

3. Результатом деления отношения R1 с атрибутами А и В на отношение R2 с атрибутом В (Rl DIVIDEBY R2), где А и В простые или составные атрибуты, причем атрибут В — общий атрибут, определенный на одном и том же домене (множестве доменов составного атрибута), является отношение R с заголовком А и телом, состоящим из кортежей r таких, что в отношении R1 имеются кортежи (r, s), причем множество значений s включает множество значений атрибута В отношения R2.

Пример 3. Даны два отношения R1 и R2.

Таблица 4

R1

Р# название P# тип вес
P1 Гайка P1 Каленый  
P2 Угол P2 Твердый  
P3 Шайба P3 Каленый 10,5
P4 Болт P4 Каленый  
P5 Гайка P5 Твердый  

Таблица 5

R2

Р# вес
P1  
P2  
P3 10,5
P4  

Результирующее отношение R(R1 DIVIDEBY R2) – вычитание из множества полей первого отношения множества полей второго отношения (одинаковые записи не дублируются)

Таблица 6

Р# название тип
P1 Гайка Каленый
P2 Угол Твердый
P3 Шайба Каленый
P4 Болт Каленый

4. Соединение Cf(Rl, R2) отношений R1 и R2 по условию, заданному формулой f, представляет собой отношение R, которое можно получить путем Декартова произведения отношений R1 и R2 с последующим применением к результату операции выборки по формуле f. Правила записи формулы f такие же, как и для операции селекции.

Соединение Cf(Rl, R2), где формула f имеет произвольный вид (в отличие от частных случаев, рассматриваемых далее), называют также Q-соединением.

Пример 4. Соединение отношений R1, R2

Таблица 7

R1

Р# название тип Город_П
P1 Гайка Каленый Киев
P2 Угол Твердый Киев
P3 Шайба Каленый Урай

Таблица 8

R2

П# Имя статус Город_Д
S1 Сергей   Москва
S2 Иван   Киев
S3 Петр   Урай

Результирующее отношение R(R1,R2) по атрибутам Город_П и Город_Д.

Таблица 9

Р# название тип Город_П П# Имя статус Город_Д
P1 Гайка Каленый Киев S2 Иван   Киев
P2 Угол Твердый Киев S2 Иван   Киев
P3 Шайба Каленый Урай S3 Петр   Урай

Раздел 3. Модели данных.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: