Главная
»
Общенаучные дисциплины
»
Математика (1 семестр)
»
Основные определения и операции реляционной алгебры.
Основные определения и операции реляционной алгебры.
Алгеброй называется множество объектов с заданной на нем совокупностью операций, замкнутых относительно этого множества, называемого основным множеством.
Основным множеством в реляционной алгебре является множество отношении. Всего Э. Ф. Коддом было предложено 8 операций
Теоретико-множественные операторы: Объединение; Пересечение; Вычитание; Декартово произведение
Специальные реляционные операторы: Выборка; Проекция; Соединение; Деление
Реляционные операторы объединения, пересечения и взятия разности требуют, чтобы отношения имели одинаковые заголовки. Действительно, отношения состоят из заголовка и тела. Операция объединения двух отношений есть просто объединение двух множеств кортежей, взятых из тел соответствующих отношений.
Отношения называются совместимыми по объединению, если
* имеют одно и то же множество имен атрибутов, то есть для любого атрибута в одном отношении найдется атрибут с таким же наименованием в другом отношении,
* атрибуты с одинаковыми именами определены на одних и тех же доменах.
Некоторые отношения не являются совместимыми по объединению, но становятся таковыми после некоторого переименования атрибутов.
Реляционный оператор расширенного декартова произведения требует, чтобы отношения-операнды не обладали одноименными атрибутами. Отношения называются совместимыми по взятию расширенного декартова произведения, если пересечение множеств имен атрибутов, взятых из их схем отношений, пусто.
Оператор переименования атрибутов
В результате применения оператора переименования атрибутов получаем новое отношение, с измененными именами атрибутов.
R RENAME Atr1, Atr2, … AS NewAtr1, NewAtr2, …
где R — отношение
Atr1, Atr2, … — исходные имена атрибутов
NewAtr1, NewAtr2, … — новые имена атрибутов
Объединением двух совместимых по типу отношений A и B называется отношение с тем же заголовком, что и у отношений Aи B, и телом, состоящим из кортежей, принадлежащих или A, или B, или обоим отношениям.
A UNION B
Пересечением двух совместимых по типу отношений A и B называется отношение с тем же заголовком, что и у отношений Aи B , и телом, состоящим из кортежей, принадлежащих одновременно обоим отношениям A и B. Синтаксис: A INTERSECT B
Вычитанием двух совместимых по типу отношений A и B называется отношение с тем же заголовком, что и у отношений AиB, и телом, состоящим из кортежей, принадлежащих отношению A и не принадлежащих отношению B. Синтаксис: A MINUSB
Декартовым произведением двух отношений A(A1,A2…An) и B(B1,B2….Bm )называется отношение, заголовок которого является сцеплением заголовков отношений A и B: (A1,A2…An B1,B2….Bm), а тело состоит из кортежей, являющихсясцеплением кортежей отношений A и B: (a1,a2..an,b1,b2…bm), таких, что (a1,a2..an) ∈ A, (b1,b1…bm) ∈ B. Синтаксис операции декартового произведения: A TIMES B
Специальные реляционные операторы:
Выборкой (ограничением, селекцией) на отношении A с условием c называется отношение с тем же заголовком, что и у отношения A, и телом, состоящем из кортежей, значения атрибутов которых при подстановке в условие c дают значение ИСТИНА. c представляет собой логическое выражение, в которое могут входить атрибуты отношения A и (или) скалярные выражения. В простейшем случае условие c имеет вид XΘY, где Θ- один из операторов сравнения (=, ≠, <, >, ≤, ≥ и т.д.), а Xи Y- атрибуты отношения A или скалярные значения. Такие выборки называются Θ - выборки (тэта-выборки) или Θ-ограничения, Θ-селекции.
A WHERE c или A WHERE XΘY
Проекцией отношения A по атрибутам X,Y,..,Z, где каждый из атрибутов принадлежит отношению A, называется отношение с заголовком (X,Y,..,Z) и телом, содержащим множество кортежей вида (x,y,..,z) , таких, для которых в отношении A найдутся кортежи со значением атрибута X равным x, значением атрибута Y равным y, …, значением атрибута Z равным z. Синтаксис операции проекции: A[X,Y,..,Z] или PROJECT A {x, y, …, z}
Операция соединения есть результат последовательного применения операций декартового произведения и выборки. Если в отношениях и имеются атрибуты с одинаковыми наименованиями, то перед выполнением соединения такие атрибуты необходимо переименовать.
Синтаксис: (A TIMES B) WHERE c , и более короткий синтаксис: A[XΘY]B
Деление
Пусть даны отношения A(X1,X2,…,Xn,Y1,Y2,…,Ym) и B(Y1,Y2,…,Ym), причем атрибуты Y1,Y2,…,Ym - общие для двух отношений. Делением отношений A на B называется отношение с заголовком (X1,X2,…,Xn) и телом, содержащим множество кортежей (x1, x2, …, xn), таких, что для всех кортежей (y1, y2, …, ym) ∈ B в отношении A(X1, X2, …, Xn, Y1, Y2, …, Ym) найдется кортеж (x1, x2, …, xn, y1, y2, …, ym).
Отношение A выступает в роли делимого, отношение B выступает в роли делителя. Деление отношений аналогично делению чисел с остатком. Синтаксис операции деления: A DIVIDEBY B
Друзья! Приглашаем вас к обсуждению. Если у вас есть своё мнение, напишите нам в комментарии.