Добавил:
rushevamar@mail.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD шпорки.doc
Скачиваний:
113
Добавлен:
17.06.2021
Размер:
4.62 Mб
Скачать
  1. Реляционные операции селекции и проекции

Операции селекции(сокращения)

Селекции сущности S по условию P называется сущность с тем же заголовком, что и у сущности S и телом, состоящим из тех кортежей сущности S, которые удовлетворяют условию P. Условие P – это предикат, т.е. выражение логического типа, которое может принимать одно их двух значений: истина или ложь. Предикат задаёт условие отбора кортежей сущности S: те кортежи, для которых значение предиката есть истина будут включены в результирующую сущность. Данный предикат принято называть условием сокращения.

Синтаксис: S WHERE P

Обычно предикаты строятся с использование имён атрибутов, констант, арифметических операций, операторов сравнения (=, ≠, <, > и тд) и логических связок (AND, OR, NOT) соответственно (И, ИЛИ, НЕ).

Например:

студент WHERE N_группы=473602

Студент WHERE Год поступления> ГодРождения +20

Заслуживает внимания следующих эквивалент выраж.

S WHERE P1 OR P2 ≡ (S WHERE P1) UNION (S WHERE P2)

S WHERE P1 AND P2 ≡ (S WHERE P1) INTERSECT (S WHERE P2)

S WHERE NOT(P) ≡ S MINUS (S WHERE P)

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

Операции проекции

Проекцией сущности S по подмножеству её атрибутов { }, с заголовком { } и телом, состоящим из множества кортежей вида { }, таких, для каждого из которых сущности S найдётся кортеж со значением атрибута = , и т.д.

Синтаксис: S[ ]

Замечание

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

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

  1. Реляционная операция соединения. Ее разновидности

Эта операция является одной из важнейших реляционных операций и имеет 4 разновидности:

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

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

  3. Экви-соединение

  4. Естественное соединение

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

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

..сущностей S and R по условию Ф позволяет получить сущность (S TIMES R) WHERE P, где предикат P может включать в себя имена атрибутов и сущностей S.

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

Тэта-соединение (ϴ)

..- эта операция предназначена для тех случаев, когда возникает необходимость соединить 2 сущности по одиночным атрибутам на основе некоторого оператора сравнения.

Пусть заголовок сущности S включает в себя атрибут А, заголовок сущности R- атрибут B, тогда ϴ соединение сущностей S and R по атрибутам А и В называется сущность:

(S TIMES R) WHERE AϴB

ϴ {=, ≠, <, >, , }

Часто для операции тэта-соединение применяют следующий синтаксис

S[A ϴ B] R

Экви-соединения

Если ϴ представляют собой оператор проверки на равенство, то это соединение называется экви-соединение или соединением по равенству:

S[A = B]R

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

Естественное соединение:

Пусть даны сущность S с заголовком {A1, … An, B1,…, Bm} и сущность R с заголовком {B1,…,Bm,C1,…,Cp} при этом заголовки содержат общие атрибуты B1,…,Bm, тогда естественным соединением сущности S и R называется сущность с заголовком {A1, … An, B1,…, Bm,C1,…,Cp} и телом, содержащее множество кортежей вида: {a1, … an, b1,…, bm,c1,…,cp}, таких, для каждого из которых имеет место (a1,…an,b1,…,bm) принадлежащих S и (b1,…bm,c1,…,cp) принадлежащих R

Естественное соединение важно, для него существует спец. Синтаксис: S JOIN R

Соседние файлы в предмете Базы данных