Что такое реляционная алгебра

Что такое реляционная алгебра

Во вторую группу входят операции, применимые только к отношениям:

Рис. 1. Операции реляционной алгебры

Нужно объединить два отношения Физ_лица и Юр_лица.

Отношение Физ_лица
ФИОАдр_регистрацииФакт_адр
Иванов Ю.М.Москва, Тверская 2С.-Петербург,Садовая ул. 12
Сергеев И.А.С.-Петербург, Седова 23С.-Петербург, Гороховая ул. 34
...

Отношение Юр_лица
НаимАдр_регистрацииАдр_офиса
АльфаНовгород, Садовая ул. 2С.-Петербург,Садовая ул. 42
Бета.С.-Петербург, Московский пр. 23Гатчина, Лесная ул. 34
...

Результат запроса:

ИМЯАдр_официальныйФактический_адр
Иванов Ю.М.Москва, Тверская 2С.-Петербург,Садовая ул. 12
Сергеев И.А.С.-Петербург, Седова 23С.-Петербург, Гороховая ул. 34
АльфаНовгород, Садовая ул. 2С.-Петербург,Садовая ул. 42
Бета.С.-Петербург, Московский пр. 23Гатчина, Лесная ул. 34
...

Операции объединения, пересечения и разности имеют следующие особенности:

Из отношения Жители нужно выбрать жителей, младше 30 лет

Отношение Жители
ФИОВозраст
Андреев31
Иванов21
Перов40
Яковлев27

На языке SQL запрос запрос выглядит так:

Результат выборки

ФИОВозраст
Андреев31
Перов40

Из отношения Жители нужно выбрать только фамилии жителей

Отношение Жители
ИмяФИОВозраст
ЮрийИванов31
СергейИванов21
ВладимирПеров40
ИгорьПеров27

На языке SQL запрос запрос выглядит так:

Результат выборки

ФИО
Иванов
Перов

Язык SQL предназначен для работы с реальными таблицами и допускает несколько одинаковых строк в таблице с результатами запроса. Для исключения одинаковых строк служит служебное слово DISTINCT

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

Даны два отношения Рабочие и Инструменты

Рабочие
ТабНомерФИОДолжность
1АндреевСлесарь
2ИвановСлесарь
3ПеровТокарь
4ЯковлевФрезеровщик

Инструменты
ТабНомерИнструмент
1Штангельциркуль
1Микрометр
1Линейка
2Штангельциркуль
2Скоба

ТабНомерФИОДолжностьИнструмент
1АндреевСлесарьШтангельциркул
1АндреевСлесарьМикрометр
1АндреевСлесарьЛинейка
2ИвановСлесарьШтангельциркул
2ИвановСлесарьСкоба

Если в запросе не указать общий атрибут, то получится декартово произведение, состоящее из 4*5=20 кортежей.

При выполнении запроса SELECT, как правило, делаются несколько реляционных операций. Например, для выборки из отношения Рабочие всех кортежей со слесарями и атрибутов ФИО и Должность служит оператор

Выполнение этого запроса состоит из двух реляционных операций: выборки и проекции.

Источник

Что такое реляционная алгебра

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

В реализациях конкретных реляционных СУБД сейчас не используется в чистом виде ни реляционная алгебра, ни реляционное исчисление. Фактическим стандартом доступа к реляционным данным стал язык SQL (Structured Query Language). Язык SQL представляет собой смесь операторов реляционной алгебры и выражений реляционного исчисления, использующий синтаксис, близкий к фразам английского языка и расширенный дополнительными возможностями, отсутствующими в реляционной алгебре и реляционном исчислении. Вообще, язык доступа к данным называется реляционно полным, если он по выразительной силе не уступает реляционной алгебре (или, что то же самое, реляционному исчислению), т.е. любой оператор реляционной алгебры может быть выражен средствами этого языка. Именно таким и является язык SQL.

В данной главе будут рассмотрены основы реляционной алгебры.

Замкнутость реляционной алгебры

Реляционная алгебра представляет собой набор операторов, использующих отношения в качестве аргументов, и возвращающие отношения в качестве результата. Таким образом, реляционный оператор Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебравыглядит как функция с отношениями в качестве аргументов:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

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

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

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

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

Традиционно, вслед за Коддом [43], определяют восемь реляционных операторов, объединенных в две группы.

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

Отношения, совместимые по типу

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

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

Оператор переименования атрибутов

Оператор переименования атрибутов имеет следующий синтаксис:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра— отношение,

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра— исходные имена атрибутов,

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра— новые имена атрибутов.

В результате применения оператора переименования атрибутов получаем новое отношение, с измененными именами атрибутов.

Следующий оператор возвращает неименованное отношение, в котором атрибут Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрапереименован в Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Теоретико-множественные операторы

Объединение

Определение 2. Объединением двух совместимых по типу отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраназывается отношение с тем же заголовком, что и у отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, и телом, состоящим из кортежей, принадлежащих или Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, или Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, или обоим отношениям.

Синтаксис операции объединения:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Замечание. Объединение, как и любое отношение, не может содержать одинаковых кортежей. Поэтому, если некоторый кортеж входит и в отношение Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, и отношение Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, то в объединение он входит один раз.

Пример 2. Пусть даны два отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрас информацией о сотрудниках:

Табельный номерФамилияЗарплата
1Иванов1000
2Петров2000
3Сидоров3000

Таблица 1 Отношение A

Табельный номерФамилияЗарплата
1Иванов1000
2Пушников2500
4Сидоров3000

Таблица 2 Отношение B

Объединение отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрабудет иметь вид:

Табельный номерФамилияЗарплата
1Иванов1000
2Петров2000
3Сидоров3000
2Пушников2500
4Сидоров3000

Таблица 3 Отношение A UNION B

Замечание. Как видно из приведенного примера, потенциальные ключи, которые были в отношениях Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебране наследуются объединением этих отношений. Поэтому, в объединении отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраатрибут «Табельный номер» может содержать дубликаты значений. Если бы это было не так, и ключи наследовались бы, то это противоречило бы понятию объединения как «объединение множеств». Конечно, объединение отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраимеет, как и любое отношение, потенциальный ключ, например, состоящий из всех атрибутов.

Пересечение

Определение 3. Пересечением двух совместимых по типу отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраназывается отношение с тем же заголовком, что и у отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, и телом, состоящим из кортежей, принадлежащих одновременно обоим отношениям Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра.

Синтаксис операции пересечения:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Пример 3. Для тех же отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, что и в предыдущем примере пересечение имеет вид:

Табельный номерФамилияЗарплата
1Иванов1000

Таблица 4 Отношение A INTERSECT B

Вычитание

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

Синтаксис операции вычитания:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Пример 4. Для тех же отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, что и в предыдущем примере вычитание имеет вид:

Табельный номерФамилияЗарплата
2Петров2000
3Сидоров3000

Таблица 5 Отношение A MINUS B

Декартово произведение

Определение 5. Декартовым произведением двух отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраназывается отношение, заголовок которого является сцеплением заголовков отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра,

а тело состоит из кортежей, являющихся сцеплением кортежей отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра,

таких, что Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра.

Синтаксис операции декартового произведения:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Замечание. Мощность произведения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраравна произведению мощностей отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, т.к. каждый кортеж отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрасоединяется с каждым кортежем отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра.

Замечание. Если в отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраимеются атрибуты с одинаковыми наименованиями, то перед выполнением операции декартового произведения такие атрибуты необходимо переименовать.

Замечание. Перемножать можно любые два отношения, совместимость по типу при этом не требуется.

Пример 5. Пусть даны два отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрас информацией о поставщиках и деталях:

Номер поставщикаНаименование поставщика
1Иванов
2Петров
3Сидоров

Таблица 6 Отношение A (Поставщики)

Номер деталиНаименование детали
1Болт
2Гайка
3Винт

Таблица 7 Отношение B (Детали)

Декартово произведение отношений Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрабудет иметь вид:

Номер поставщикаНаименование поставщикаНомер деталиНаименование детали
1Иванов1Болт
1Иванов2Гайка
1Иванов3Винт
2Петров1Болт
2Петров2Гайка
2Петров3Винт
3Сидоров1Болт
3Сидоров2Гайка
3Сидоров3Винт

Таблица 8 Отношение A TIMES B

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

Специальные реляционные операторы

Выборка (ограничение, селекция)

Определение 6. Выборкой (ограничением, селекцией) на отношении Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрас условием Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраназывается отношение с тем же заголовком, что и у отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, и телом, состоящем из кортежей, значения атрибутов которых при подстановке в условие Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрадают значение ИСТИНА. Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрапредставляет собой логическое выражение, в которое могут входить атрибуты отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи (или) скалярные выражения.

В простейшем случае условие Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраимеет вид Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра, где Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра— один из операторов сравнения ( Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи т.д.), а Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраи Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра— атрибуты отношения Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраили скалярные значения. Такие выборки называются Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебравыборки (тэта-выборки) или Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраограничения, Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебраселекции.

Синтаксис операции выборки:

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра,

Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебра

Пример 6. Пусть дано отношение Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрас информацией о сотрудниках:

Табельный номерФамилияЗарплата
1Иванов1000
2Петров2000
3Сидоров3000

Таблица 9 Отношение A

Результат выборки Что такое реляционная алгебра. Смотреть фото Что такое реляционная алгебра. Смотреть картинку Что такое реляционная алгебра. Картинка про Что такое реляционная алгебра. Фото Что такое реляционная алгебрабудет иметь вид:

Табельный номерФамилияЗарплата
1Иванов1000
2Петров2000

НОМ_ВЕЩЕСТВАВЕЩЕСТВО
1Дезоксирибонуклеиновая кислота
2Бензин

Таблица 25 Отношение ВЕЩЕСТВО

НОМ_ЭЛЕМЕНТАЭЛЕМЕНТ
1Водород
2Гелий
105

Таблица 26 Отношение ЭЛЕМЕНТЫ

НОМ_ВЕЩЕСТВАНОМ_ЭЛЕМЕНТАПРОЦЕНТ
115
123
11050.01
2150

Таблица 27 Отношение ХИМИЧЕСКИЙ_СОСТАВ_ВЕЩЕСТВ

На языке SQL такой запрос реализуется одной командой:

Невыразимость транзитивного замыкания реляционными операторами

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

Пример 17. Рассмотрим отношение, описывающее сотрудников некоего предприятия. Отношение содержит данные о табельном номере сотрудника, фамилии, должности и табельном номере руководителя сотрудника – СОТРУДНИКИ ( ТАБ_НОМ, ФАМИЛИЯ, ДОЛЖНОСТЬ, ТАБ_НОМ_РУК):

ТАБ_НОМФАМИЛИЯДОЛЖНОСТЬТАБ_НОМ_РУК
1ИвановДиректор1
2ПетровГлав.бухгалтер1
3СидоровБухгалтер2
4ВасильевНачальник цеха1
5СуховМастер4
6ШариповРабочий5

Таблица 28 Отношение СОТРУДНИКИ

Рассмотрим запрос «Перечислить всех руководителей (прямых и непрямых) данного сотрудника».

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

Кросс-таблицы

Одной из задач, связанных с представлением табличных данных является построение так называемых кросс-таблиц.

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

ТоварМесяцКоличество
КомпьютерыЯнварь100
ПринтерыЯнварь200
СканерыЯнварь300
КомпьютерыФевраль150
ПринтерыФевраль250
СканерыФевраль350

Таблица 29 Данные о продажах

ТоварЯнварьФевраль
Компьютеры100150
Принтеры200250
Сканеры300350

Таблица 30 Кросс-таблица

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

Выводы

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

Традиционно определяют восемь реляционных операторов, объединенных в две группы.

Теоретико-множественные операторы: объединение, пересечение, вычитание, декартово произведение.

Специальные реляционные операторы: выборка, проекция, соединение, деление.

Для выполнения некоторых реляционных операторов требуется, чтобы отношения были совместимы по типу.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *