Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 4 - Базы и хранилища данных.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
93.61 Кб
Скачать

Специальные операции реляционной алгебры

Выборка (горизонтальный выбор, или операция фильтрации, или операция ограничения отношений). Для определения этой операции необходимо ввести дополнительные обозначения.

Результатом операции выбора, или фильтрации, заданной на отношении R в виде булево выражения, определенного на атрибутах отношения R, называется отношение R[α], включающее те кортежи из исходного отношения, для которых истинно условие выбора или фильтрации: R[α (r)] = {r | r R α (r) = "Истина"}

Операция фильтрации является одной из основных при работе с реляционной моделью данных. Условие α может быть сколь угодно сложным.

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

При выполнении операции проекции выделяется «вертикальная» вырезка отношения-операнда с естественным уничтожением потенциально возникающих кортежей-дубликатов.

Иногда называется операцией вертикального выбора, позволяет получить только требуемые характеристики моделируемого объекта. Чаще всего операция проектирования употребляется как промежуточный шаг в операциях горизонтального выбора, или фильтрации. Кроме того, она используется самостоятельно на заключительном этапе получения ответа на запрос.

Соединение отношений (Операция условного соединения). Это процесс, когда две или более таблицы объединяются в одну. В отличие от фильтрации и проектированич, которые являются унарными, операция условного соединения является бинарной, то есть исходными для нее являются два отношения, а результатом — одно.

Существуют различные типы операций соединения (в разных книгах могут быть разные классификации):

  • тета-соединение (внутреннее соединение) - используется, когда нужно включить все строки из обеих таблиц, удовлетворяющие условию объединения. В этом случае строится декартово произведение строк первой и второй таблиц, а из полученного набора данных отбираются записи, удовлетворяющие условиям объединения;

  • соединение по эквивалентности;

  • естественное соединение;

  • внешнее соединение;

  • полусоединение.

В условиях объединения могут участвовать поля, относящиеся к одному и тому же типу данных и содержащие один и тот же вид данных, но они не обязательно должны иметь одинаковые имена. Блоки данных из двух таблиц объединяются, как только в указанных полях будут найдены совпадающие значения.

Если предикат F содержит только оператор равенства (=), то соединение называется соединением по эквивалентности.

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

Внешнее соединение похоже на внутреннее, но в результирующий набор данных включаются также записи ведущей таблицы соединения, которые объединяются с пустым множеством записей другой таблицы.

Какая из таблиц будет ведущей, определяет вид соединения.

LEFT - левое внешнее соединение, ведущей является таблица, расположенная слева от вида соединения.

Левым внешним соединением называется соединение, при котором кортежи отношения R, не имеющие совпадающих значений в общих столбцах отношения S, также включаются в результирующее отношение.

RIGHT - правое внешнее соединение, ведущая таблица расположена справа от вида соединения.

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

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

Операция полусоединения определяет отношение, содержащее те кортежи отношения R, которые входят в соединение отношений R и S (выбор тех R.a1, R.a2, для которых R.a2=S.b1)

Операция деления выполняется над двумя отношениями А и В, где А - отношение-делимое, а B - отношение-делитель. При этом атрибуты B должны являться подмножеством атрибутов A. Результатом выполнения операции деления является отношение С, которое включает в себя атрибуты отношения А, отличные от атрибутов отношения В, и только те кортежи, декартовы произведения которых с отношением В дают отношение А.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]