Проекцией отношения A по атрибутам X, Y, …, Z, где каждый из атрибутов принадлежит отношению A, называется отношение с заголовком (X, Y, …, Z) и телом, содержащим множество кортежей вида (x, y, …, z), таких, для которых в отношении A найдутся кортежи со значением атрибута X равным x, значением атрибута Y равным y, …, значением атрибута Z равным z.
Синтаксис операции проекции: A[X, Y, …, Z]
Замечание. Операция проекции дает " вертикальный срез " отношения, в котором удалены все возникшие при таком срезе дубликаты кортежей.
Пример Пусть дано отношение A с информацией о поставщиках, включающих наименование и месторасположение:
Номер поставщика | Наименование поставщика | Город поставщика |
1 | Иванов | Уфа |
2 | Петров | Москва |
3 | Сидоров | Москва |
4 | Сидоров | Челябинск |
Отношение A (Поставщики)
Проекция A[город поставщика] будет иметь вид:
Город поставщика |
Уфа |
Москва |
Челябинск |
Отношение A[Город поставщика]
Соединение
Операция соединения отношений, наряду с операциями выборки и проекции, является одной из наиболее важных реляционных операций.
|
|
Обычно рассматривается несколько разновидностей операции соединения:
- Общая операция соединения
- Q-соединение (тэта-соединение)
- Экви-соединение
- Естественное соединение
Наиболее важным из этих частных случаев является операция естественного соединения. Все разновидности соединения являются частными случаями общей операции соединения.
Общая операция соединения
Определение
Соединением отношений A и B по условию c называется отношение (A TIMES B) WHERE c, с представляет собой логическое выражение, в которое могут входить атрибуты отношений A и B и (или) скалярные выражения.
Таким образом, операция соединения есть результат последовательного применения операций декартового произведения и выборки. Если в отношениях A и B имеются атрибуты с одинаковыми наименованиями, то перед выполнением соединения такие атрибуты необходимо переименовать.