Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по БД(Манило).doc
Скачиваний:
7
Добавлен:
02.08.2019
Размер:
561.15 Кб
Скачать

Реляционная алгебра

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

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

Объединение. В результате применения этой операции получается отношение. объединяющее кортежи, содержащиеся в исходных отношениях. Пусть имеем два исходных отношения R1 и R2 . Операция объединения этих отношений обозначается R1  R2:

R1  R2 = { r / r  R1 или r  R2 }.

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

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

R1  R2 = { r / r  R1 и r  R2 }.

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

R1 \ R2 = { r / r  R1 и r  R2 }.

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

R1 х R2 = {< r1, r2 > / r  R1 и r  R2 }.

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

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

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

R1  R2 = { <A,B,C> / <A,B>  R1 и <B,C>  R2 }.

Отношение R1  R2 является отношением с атрибутами <A,B,C>.

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

Пусть из общего количества m атрибутов отношения R1 выделим несколько атрибутов: A,B,...,F и из них составляем список, обозначив его через M. Набор значений атрибутов из М столбцов можно рассмотреть как проекцию отношения R на список атрибутов М, то есть М (R1). Тогда через М будут обозначаться атрибуты дополнительные к М, то есть атрибуты отношения R1, не вошедшие в список М, и соответственно значения атрибутов из списка М определяются М (R1).

Операцию деления можно определить так:

R1 [M N] R2 = М (R1) \ М ((М (R1)  N (R2)) \ R1 },

где М - это проекция отношения на атрибуты списка М.