Тэта-соединение

Общая операция соединения

Соединение

Проекция

Проекцией отношения A по атрибутам X, Y,…Z, где каждый из атрибутов принадлежит отношению A, называется отношение с заголовком (X, Y,…Z) и телом, содержащим множество кортежей вида (x, y,…z), таких, для которых в отношении A найдутся кортежи со значением атрибута X равным x, значением атрибута Y равным y, …, значением атрибута Z равным z. Синтаксис операции проекции: A[X, Y,…, Z]. Операция проекции дает "вертикальный срез" отношения, в котором удалены все возникшие при таком срезе дубликаты кортежей.

Пример. Пусть дано отношение с информацией о поставщиках, включающих наименование и месторасположение:

Номер поставщика Наименование поставщика Город поставщика
  Иванов Уфа
  Петров Москва
  Сидоров Москва
  Сидоров Челябинск

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

Проекция будет иметь вид:

Город поставщика
Уфа
Москва
Челябинск

Таблица 12 Отношение A[Город поставщика]

Соединением отношений A и B по условию называется отношение (A TIMES B) WYERE c. c представляет собой логическое выражение, в которое могут входить атрибуты отношений A и B и (или) скалярные выражения. Таким образом, операция соединения есть результат последовательного применения операций декартового произведения и выборки. Если в отношениях A и B имеются атрибуты с одинаковыми наименованиями, то перед выполнением соединения такие атрибуты необходимо переименовать.

Пусть отношение A содержит атрибут X, отношение B содержит атрибут Y, а θ - один из операторов сравнения (<, >, >=, <= и т.д.). Тогда θ-соединением отношения A по атрибуту X с отношением B по атрибуту Y называют отношение (A TIMES B) WHERE XθY или A[XθY]B. Это частный случай операции общего соединения.

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

Номер поставщика Наименование поставщика X (Статус поставщика)
  Иванов  
  Петров  
  Сидоров  

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

Номер детали Наименование детали Y(Статус детали)
  Болт  
  Гайка  
  Винт  

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

Ответ на вопрос "какие поставщики имеют право поставлять какие детали?" дает -соединение:

Номер поставщика Наименованиепоставщика X (Статус поставщика) Номер детали Наименование детали Y (Статус детали)
           
  Иванов     Болт  
  Иванов     Гайка  
  Иванов     Винт  
  Петров     Винт  
  Сидоров     Гайка  
  Сидоров     Винт  

Таблица 15 Отношение "Какие поставщики поставляют какие детали"


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



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