Множества Di называют доменами.
N-арным отношением R называется некоторое подмножество декартова произведения этих множеств: R ÍD1 x D2 x . . . x Dn .
Пример.
Пусть заданы множества D1 = {а1,а2,а3,а4,а5} и D2={b1,b2,b3}, тогда декартово произведение этих множеств запишется как
D1 x D2 = {<a1,b1>,<a1,b2>,<a1,b3>,<a2,b1>, . . .,<a5,b3>}.
Построим отношение R={<a1,b3>,<a2,b1>,<a2,b3>,<a3,b1>,<a3,b3>}.
Очевидно, что RÌ D1 x D2.
Совокупность кортежей, записанных друг за другом, образует таблицу, строки которой соответствуют кортежам, а столбцы - атрибутам.
A1 | A2 |
a1 | b3 |
a2 | b1 |
a2 | b3 |
a3 | b1 |
a3 | b3 |
Атрибут Ai представляет собой подмножество домена Di . Для предыдущего примера атрибутами являются множества A1= {a1, a2, a3}, A2={b1,b3}, при этом A1Ì D1 и A2Ì D2.
Запись: R(A1,A2,…,An) называется схемой отношения R и содержит наряду с названием отношения названия атрибутов. Если атрибуты принимают значения из одного и того же домена, то они называются Q-сравнимыми, где Q - множество допустимых операций сравнения, заданных для данного домена. Схемы двух отношений называются эквивалентными, если они имеют одинаковую степень и возможно такое упорядочение имен атрибутов в схемах, что на одинаковых местах будут располагаться сравнимые атрибуты, то есть атрибуты, принимающие значения из одного домена.
Поскольку отношение - это подмножество, то следует отметить, что оно не может содержать двух одинаковых кортежей.
Подмножество K = {Ai1,Ai2,...,Aik} заданной схемы отношения R(A1,A2,…,An) будем называть ключом, если в двух различных кортежах отношения R значения в каждом атрибуте из K не все одинаковы и ни одно собственное подмножество K этим же свойством не обладает.
Другими словами, ключ - это такое множество атрибутов, которое при задании этих атрибутов однозначно определяет кортеж.
Отношение(в БД) моделирует реальную ситуацию, и в соответствии со свойствами отношений в таблице могут присутствовать только атрибуты, обладающие свойством симметричности.
В результате вышесказанного реляционная таблица обладает рядом специфических свойств:
1. В таблице нет двух одинаковых строк.
2. Таблица имеет столбцы, соответствующие атрибутам отношения.
3. Каждый атрибут в отношении имеет уникальное имя.
4. Порядок строк в таблице произвольный.
5. Два отношения, отличающиеся только порядком следования столбцов, интерпретируются как одинаковые.
Операции над отношениями выполняются методами реляционного исчисления и реляционной алгебры. Кодд показал, что реляционная алгебра и реляционное исчисление - эквивалентны.
Множество М вместе с набором операций
где ni – арность операции ji, называется алгебраической структурой, универсальной алгеброй или просто алгеброй. Множество М называется основным (несущим множеством), множество операций å называется сигнатурой.
Основным множеством в реляционной алгебре является множество отношений. Поскольку отношение можно представить в виде таблицы, то здесь в качестве операндов будем рассматривать реляционные таблицы. Пусть заданы отношения R и S, которые содержат перечни изделий, выпускаемых разными фирмами F1 и F2 соответственно.
S | |
Prod_id | Prod |
1035 | Cвитер |
2241 | Настольная лампа |
2249 | Светильник |
2378 | Бронзовая скульптура |
R | |
Prod_id | Prod |
1055 | Cвингер |
2246 | Люстра |
2249 | Светильник |
Основные операции реляционной алгебры: сумма, пересечение, вычитание, произведение, выбор, проекция, Q - соединение, деление. Первые четыре взяты из теории множеств, следующие применяются в реляционной модели данных.
Объединением двух отношений R и S :R È S называется множество всех кортежей, содержащихся в R и S.
Q | |
Prod_id | Prod |
1035 | Cвитер |
2241 | Настольная лампа |
1055 | Cвингер |
2246 | Люстра |
2249 | Светильник |
2378 | Бронзовая скульптура |
В результате операции объединения получим следующую таблицу:
Необходимо отметить, что объединяются таблицы только с одинаковыми атрибутами и кортежи одинаковые для обеих таблиц, входят в результирующую таблицу Q только один раз.
Q | |
Prod_id | Prod |
2249 | Светильник |
Пересечением R Ç S отношений R и S является множество кортежей, одновременно содержащихся в отношениях R и S.
В этом случае в отношении Q содержится перечень изделий, выпускаемых обеими фирмами.
Разностью R\S отношений R и S называется отношение, содержащее множество всех кортежей, содержащихся в R и не содержащих кортежи из S.
В результате выполнения операции разность получим отношение Q, содержащее перечень изделий, выпускаемых только фирмой F2.
R\S
Q | Необходимо отметить, что для получения перечня изделий, выпускаемых только фирмой F1, необходимо выполнить операцию S\R. В этом случае получаем отношение Q1 вида: | |
Prod_id | Prod | |
1055 | Свингер | |
2246 | Люстра |
Q1 | |
Prod_id | Prod |
1035 | Свингер |
2241 | Настольная лампа |
2378 | Бронзовая скульптура |
Декартовым произведением RxS отношений R и S является множество кортежей t = <r1, r2,…,rm, S1, S2,…, Sn>, где первые m элементов кортежа t образуют кортеж из множества R, последние n элементов из отношения S, т.е. <r1, r2, …, rm > Î R и <S1, S2,…, Sn>ÎS. Рассмотрим две таблицы А и В.
А | В | ||
id | N | цвет | статус |
10 | 27 | Зеленый Красный Cиреневый | 22 17 54 |
11 | 35 |
В результате выполнения операции произведения получим таблицу Т=АхВ вида
Т | |||
id | N | цвет | статус |
10 10 10 11 11 11 | 27 27 27 35 35 35 | Зеленый Красный Сиреневый Зеленый Красный Сиреневый | 22 17 54 22 17 54 |
Произведение создано путем присоединения к каждой строке таблицы А каждой строки таблицы В.
Выборкой aF(R) из отношения R является множество кортежей отношения R, для которых истинен предикат F.
Предикат – это некоторое условие, выраженное в форме логического утверждения. Условия в основном такие же, какие используются в операторе IF в выражениях традиционных языков программирования. В качестве операндов здесь выступают столбцы реляционной таблицы, используются арифметические операторы сравнения <, ≤, =, ≥ , ≠ , > и логические операторы ^ (И), | (ИЛИ), ¬ (НЕ). В выражении условия могут присутствовать скобки.