Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 3 Реляционная алгебра.doc
Скачиваний:
4
Добавлен:
16.09.2019
Размер:
438.27 Кб
Скачать

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

Рассмотрим механизм манипулирования реляционными данным на основе реляционной алгебры (РА) и реляционного исчисления (РИ). Строго говоря, РА и РИ эквивалентны друг другу.

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

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

Существует несколько вариантов выбора операций, которые включаются в реляционную алгебру. Исходно Клод предложил восемь операторов, но впоследствии к ним были добавлены и некоторые другие. Пять базовых операций: выборка (selection), проекция (projection), декартово произведение (cartesian product), объединение (union) и разность множеств (set difference) – выполняют большинство операций извлечения данных, которые могут представлять для нас интерес. На основании пяти базовых операций можно вывести дополнительные операции, такие как операции соединения (join), пересечения (intersection) и деления (division).

Унарные операции

3.7.1. Выборка или ограничение - предикат(R)

О пределяет отношение, которое содержит только те кортежи из отношения R, которые удовлетворяют заданному условию (предикату)

Например, зарплата>10000(Сотрудник)

Список всех сотрудников с зарплатой, превышающей 10000 руб.

Здесь исходным отношением является «Сотрудник», а предикатом – выражение «Зарплата»>10000. Более сложные предикаты получаются с помощью логических операций ^ (AND), v (OR), ~ (NOT)

3.7.2. Проекция - ПA1…An(R)

Определяет новое отношение, содержащее вертикальное подмножество отношения R, создаваемое в результате извлечения значений указанных атрибутов A1…An и исключения из результата строк – дубликатов

Например, ПФИО,зарплата(Сотрудник)

Операция проекции определяет новое отношение, которое содержит только атрибуты «ФИО» и «Зарплата» отношения «Сотрудник», размещенные в указанном порядке.

Операции с множествами

3.7.3. Объединение - r  s

О пределяет новое отношение, которое включает все кортежи, содержащиеся в Rили S, причем все дубликаты кортежей исключены. Отношения R и S должны быть совместимы по объединению

Например,

Создать список городов, в которых имеется отделение компании или объект недвижимости

Пгород(Офис)  Пгород(Объект недвижимости)

Для создания совместимых по объединению отношений сначала следует применить операцию проекции, чтобы выделить отношений «Офис» и «Объект недвижимости» столбцы с атрибутом «Город», исключая дубликаты. Затем - использовать операцию объединения.