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

Вычитание

Пересечение

Объединение

Объединением двух совместимых по типу отношений 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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: