Объединяемые отношения должны иметь одинаковые атрибуты (должны быть объединимыми).

Пример.

Пересечение. В данной операции (обозначаемой ) полу­чают отношение, включающее кортежи, общие для R1 и R2:

Пример. Для отношения R1 и R2из предыдущего примера получим

Разность. В результате применения этой операции (R1\R2) получается отношение, содержащее кортежи, являющиеся корте­жами отношения R1 и не являющиеся кортежами отношения R2:

Пример.

Декартово (прямое) произведение. В этой опера­ции (R1×R2) из n-местного отношения R1 и n-местного отноше­ния R2 получают (т+п) -местное отношение. Причем первые т элементов представляют кортежи из отношения R1, а последние п элементов — кортежи из отношения R2:

Пример.

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

Обозначим через j1, j2, ..., jn — номера столбцов n-местного от­ношения R. Операцию определения проекции отношения R обоз­начим через (R), а сама операция заключается в том, что из отношения R выбираются столбцы и компонуются в ука­занном порядке j1, j2, ..., jn.

Пример.

Рассмотрим отношение ТЕЛЕВИЗОР.

Тогда можно получить проекцию π1,4 (ТЕЛЕВИЗОР):

Наименование Цена, руб.

Рекорд 640

Рубин 1040

Темп 755 . Електроника 755

Горизонт 610

π4,1,3 (ТЕЛЕВІЗОР):

Цена, руб. Наименование Диагональ кине-

скопа, см

640 Рекорд 47

1040 Рубин 67

755 Темп 61

755 Електроника 61

НЕ нашли? Не то? Что вы ищете?

610 Горизонт 51

π 4 (ТЕЛЕВИЗОР):

Цена, руб.

640

1040

755

755

610

Можно отметить, что в последней проекции оказались одина­ковые строки.

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

Обозначим через r строку (кортеж) отношения R, а через θ определим одно из отношений: =, ≠, <, , >, . Тогда θ-ограничение между выбранным атрибутом А в отношении R и не­которой величиной С определяют следующим образом: R[AθC]={r|rR и r[AС}, где r[А] соответствует значению атрибута А в строке r.

Таким образом, θ-ограничение обеспечивает получение среди строк отношения R только тех строк, в которых значение атрибу­та А и значение величины С удовлетворяют условию сравнения θ.

Например, требуется из отношения ТЕЛЕВИЗОР выделить те марки теле­визоров, которые имеют стоимость меньше 700 руб.

ТЕЛЕВИЗОР [цена < 700]: Рекорд ВЦ-311 47 640

Горизонт Ц-355 51 610

Следует отметить, что в частном случае в операции сравнения вместо величины С можно использовать другой домен В. Тогда операция ограничения определяется как

Пример. Пусть отношение R имеет вид:

Так как операция θ-ограничения предусматривает выбор среди строк отно­шения R только тех, в которых значения атрибутов А и В удовлетворяют ус­ловию сравнения θ, то для условий (В<D) и (А=Е) получим следующие от­ношения:

Соединение. Операция соединения обратна операции про­екции. Рассмотрим для простоты два бинарных отношения R1(A, В) и R2(B, С). Соединением (обозначается ) отношений R1 и R2 (R1R2) называют операцию, при которой соединяют два отношения, используя в качестве признака соединения общий атрибут Y:

Отношение R1R2 является отношением с атрибутами <А, В, С>.

Например:

R1: Наименованние Индекс R2: Индекс Цена

Рекорд ВЦ-311 ВЦ-311 640

Темп Ц-280Д Ц-280Д 755

Електроника Ц-283 Ц-283 755

Горизонт Ц-355 Ц-355 610

Отношение R1R2 будет иметь вид:

Наименование Индекс Цена

Рекорд ВЦ-311 640

Темп Ц-280 755

Электроника Ц-283 755

Горизонт Ц-355 610

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

R1R2,...,Rn={M|M — кортежи, образован­ные соединением атрибутов отношений R1, R2,..., Rn}.

Отметим, что рассматривались в основном операции соедине­ния фактически по условию равенства двух атрибутов в двух от­ношениях. В общем случае соединение можно осуществлять не только по условию равенства, но и по любому другому θ: =, ≠, <, , >, :

когда θ — оператор равенства, то операцию называют эквисоеди-нением.

Если сравнение θ возможно, то для атрибутов А и В одинако­вые имена необязательны.

Пример. Пусть имеются отношения R1(A, В, С) и R2(D, E, F)

Для условий (С=Е), (B>F) получим

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

Деление. Рассмотрим деление m-местного отношения R1 на п-местное отношение R2.

Пусть из общего количества т атрибутов отношения R1 выде­лим несколько атрибутов: A, B,...,F и из них составляем список, обозначив его через М. Набор значений атрибутов из М столбцов можно рассматривать как проекцию отношения R на список ат­рибутов М, т. е. πМ(R1). Тогда через будут обозначаться атри­буты дополнительные к М, т. е. атрибуты отношения R1, не вошед­шие в список М, и соответственно значения атрибутов из списка определяются (R1). Будем полагать, что делимое (отношение R1) может быть представлено таким образом, что его атрибуты сгруппированы в порядке R1(, M). В отношении R2 также выде­лим несколько атрибутов G, К,...,Р и составим из них список, обозначив его через N (формально этот список представляет со­бой проекцию πN(R2)). Если проекции πN(R1) и πN(R2) объединимы, т. е. имеют одинаковое количество атрибутов, то можно рассматривать операцию деления R1 по М на R1 пo N (что обоз­начается как R1[MN]R2). Операция деления R1[MN]R2 пред­ставляет собой операцию, которая определяет такое наибольшее множество значений атрибутов из (R1) (обозначим его через r1()), что прямое произведение этого множества r1(), с πN(R2) содержится в R1.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87