Вычитание
Пересечение
Объединение
Объединением двух совместимых по типу отношений A и B называется отношение с тем же заголовком, что и у отношений A и B, и телом, состоящим из кортежей, принадлежащих или A, или B, или обоим отношениям. Синтаксис операции объединения: A UNION B. Объединение, как и любое отношение, не может содержать одинаковых кортежей. Поэтому, если некоторый кортеж входит и в отношение A, и отношение B, то в объединение он входит один раз.
Пример 2. Пусть даны два отношения A и B с информацией о сотрудниках:
Табельный номер | Фамилия | Зарплата |
Иванов | ||
Петров | ||
Сидоров |
Таблица 1 Отношение A
Табельный номер | Фамилия | Зарплата |
Иванов | ||
Пушников | ||
Сидоров |
Таблица 2 Отношение B
Объединение отношений и будет иметь вид:
Табельныйномер | Фамилия | Зарплата |
Иванов | ||
Петров | ||
Сидоров | ||
Пушников | ||
Сидоров |
Таблица 3 Отношение A UNION B
Пересечением двух совместимых по типу отношений A и B называется отношение с тем же заголовком, что и у отношений A и B, и телом, состоящим из кортежей, принадлежащих одновременно обоим отношениям A и B. Синтаксис операции пересечения: A INTERSECT B.
Пример 3. Для тех же отношений и, что и в предыдущем примере пересечение имеет вид:
Табельный номер | Фамилия | Зарплата |
Иванов |
Таблица 4 Отношение A INTERSECT B
Вычитанием двух совместимых по типу отношений A и B называется отношение с тем же заголовком, что и у отношений A и B, и телом, состоящим из кортежей, принадлежащих отношению A и не принадлежащих отношению B. Синтаксис операции вычитания: A MINUS B.
Пример. Для тех же отношений и, что и в предыдущем примере вычитание имеет вид:
Табельный номер | Фамилия | Зарплата |
Петров | ||
Сидоров |
Таблица 5 Отношение A MINUS B
Декартовым произведением двух отношений A(A1,…An) и B(B1,…Bn) называется отношение, заголовок которого является сцеплением заголовков отношений A и B: (A1, A2,…,An, B1, B2,…, Bm), а тело состоит из кортежей, являющихся сцеплением кортежей отношений A и B: (a1, a2,…, an, b1, b2,…, bm), таких, что(a1, a2,…, an)ÎA, (b1, b2,…, bm)ÎB. Синтаксис операции декартового произведения: A TIMES B.
Мощность произведения A TIMES B равна произведению мощностей отношений A и B, т.к. каждый кортеж отношения A соединяется с каждым кортежем отношения B. Если в отношениях A и B имеются атрибуты с одинаковыми наименованиями, то перед выполнением операции декартового произведения такие атрибуты необходимо переименовать. Перемножать можно любые два отношения, совместимость по типу при этом не требуется.
Пример. Пусть даны два отношения и с информацией о поставщиках и деталях:
Номер поставщика | Наименование поставщика |
Иванов | |
Петров | |
Сидоров |
Таблица 6 Отношение A (Поставщики)
Номер детали | Наименование детали |
Болт | |
Гайка | |
Винт |
Таблица 7 Отношение B (Детали)
Декартово произведение отношений A и B будет иметь вид:
Номер поставщика | Наименование поставщика | Номер детали | Наименование детали |
Иванов | Болт | ||
Иванов | Гайка | ||
Иванов | Винт | ||
Петров | Болт | ||
Петров | Гайка | ||
Петров | Винт | ||
Сидоров | Болт | ||
Сидоров | Гайка | ||
Сидоров | Винт |
Таблица 8 Отношение A TIMES B
CПЕЦИАЛЬНЫЕ РЕЛЯЦИОННЫЕ ОПЕРАТОРЫ
Выборка (ограничение, селекция)
Выборкой (ограничением, селекцией) на отношении A с условием c называется отношение с тем же заголовком, что и у отношения A, и телом, состоящем из кортежей, значения атрибутов которых при подстановке в условие c дают значение ИСТИНА. c представляет собой логическое выражение, в которое могут входить атрибуты отношения A и (или) скалярные выражения. В простейшем случае условие c имеет вид XθY, где θ - один из операторов сравнения (<,>,<=,>= и т.д.), а X и Y - атрибуты отношения A или скалярные значения. Синтаксис операции выборки: A WHERE c или A WHERE XθY.
Пример. Пусть дано отношение с информацией о сотрудниках:
Табельный номер | Фамилия | Зарплата |
Иванов | ||
Петров | ||
Сидоров |
Таблица 9 Отношение A
Результат выборки будет иметь вид:
Табельныйномер | Фамилия | Зарплата |
Иванов | ||
Петров |
Таблица 10 Отношение A WHERE Зарплата<3000
Таким образом, операция выборки дает "горизонтальный срез" отношения по некоторому условию.