возвращает по заданному условию кортежи указанного отношения

Возвращает по заданному условию кортежи указанного отношения

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

Рис. 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, предварительное ознакомление с реляционной алгеброй очень помогло дальнейшим знаниям правильно уложиться в голове, и я постараюсь что бы эта статья произвела подобный эффект.

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

Реляционная база данных

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

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

таблица PRODUCTS

IDNAMECOMPANYPRICE
123ПеченькиООО ”Темная сторона”190
156ЧайООО ”Темная сторона”60
235АнанасыОАО ”Фрукты”100
623ТоматыООО ”Овощи”130

Таблица состоит из 4х строк, строка в таблице является кортежем в реляционной теории. Множество упорядоченных кортежей называется отношением.
Перед тем как дать определение отношения, введем еще один термин — домен. Домены применительно к таблице это столбцы.

Для ясности, теперь введем строгое определение отношения.

Ключи в отношениях

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

COMPANYDRIVER
ООО ”Темная сторона”Владимир
ООО ”Темная сторона”Михаил
ОАО ”Фрукты”Руслан
ООО ”Овощи”Владимир

Видно, что в организации может быть несколько водителей, и чтобы однозначно идентифицировать водителя необходимо и значение из столбца “Название организации” и из “Имя водителя”. Такой ключ называется составным.

В реляционной БД таблицы взаимосвязаны и соотносятся друг с другом как главные и подчиненные. Связь главной и подчиненнной таблицы осуществляется через первичный ключ (primary key) главной таблицы и внешний ключ ( foreign key ) подчиненной таблицы.
Внешний ключ это атрибут или набор атрибутов, который в главной таблице является первичным ключем.

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

Операции реляционной алгебры

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

IDSELLER
123OOO “Дарт”
156ОАО ”Ведро”
235ЗАО “Овоще База”
623ОАО ”Фирма”

Условимся, что в этой таблице ID это внешний ключ, связанный с первичным ключом таблицы PRODUCTS.

Для начала рассмотрим самую простую операцию — имя отношения. Её результатом будет такое же отношение, то есть выполнив операцию PRODUCTS, мы получим копию отношения PRODUCTS.

Проекция

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

Синтаксис операции:
π (ID, PRICE) PRODUCTS

В результате этой операции получим отношение:

IDPRICE
123190
15660
235100
623130
Выборка

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

Синтаксис операции:
σ (PRICE>90) PRODUCTS

IDNAMECOMPANYPRICE
123ПеченькиООО ”Темная сторона”190
235АнанасыОАО ”Фрукты”100
623ТоматыООО ”Овощи”130

В условии выборки мы можем использовать любое логическое выражение. Сделаем еще одну выборку с ценой больше 90 и ID товара меньше 300:

σ (PRICE>90 ^ ID π COMPANY σ (PRICE 123ПеченькиООО ”Темная сторона”190123OOO “Дарт”156ЧайООО ”Темная сторона”60156ОАО ”Ведро”123ПеченькиООО ”Темная сторона”190156ОАО ”Ведро”156ЧайООО ”Темная сторона”60123OOO “Дарт”

Для примера использования этой операции представим себе необходимость выбрать продавцов с ценами меньше 90. Без произведения необходимо было бы сначала получить ID продуктов из первой таблицы, потом по этим ID из второй таблицы получить нужные имена SELLER, а с использованием произведения будет такой запрос:

Источник

Возвращает по заданному условию кортежи указанного отношения

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

В реализациях конкретных реляционных СУБД сейчас не используется в чистом виде ни реляционная алгебра, ни реляционное исчисление. Фактическим стандартом доступа к реляционным данным стал язык 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 не будет опубликован. Обязательные поля помечены *