КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Унарные операции
Реляционная алгебра Формальное определение реляционной алгебры:
где
ri ={t1,t2,…}| tk=(d1,d2,…), dp∈Dj - значение атрибута Ap, rel(ri)=(A1,A2,...) - схема отношения ri, ∪ - оператор объединения отношений, ∩ - оператор пересечения отношений, \ - оператор разности отношений, Ä - оператор прямого произведения отношений, ¬ - оператор дополнения отношения, δB(r) - оператор выбора кортежа отношения по условию B, πrel(r) - оператор проекции отношения на новую схему rel, >< - оператор естественного соединения отношений, >θ< - оператор θ - соединения отношений, : - оператор деления отношений. Задание логических операторов Ψ={&,∨,¬} и операторов сравнения θ={=,≠,>,≥,<, ≤} позволяют формировать условия исполнения алгебраических операций. Совокупность отношений и множества операторов Σ,Ψ,θпредставляют алгебраическую систему: Мрел=<R, Σ, Ψ, θ>, где {Σ, Ψ, θ} – сигнатура алгебраической системы, θ={=, ≠, >, ≥, <, ≤}, Ψ= {&, ∨, ¬}. Будем далее рассматривать исполнение алгебраических операций над пятью отношениями (ключи подчеркнуты):
Поскольку наглядно и наиболее удобно представлять отношения таблицами, то исполнение операций проследим в форме таблиц. Оператор выбора δB(r)позволяет извлекать из отношения r кортежи по условию В и создавать новое отношение: r’=δB(r,В)=t’|t’⊆r, B, rel(r’)=rel(r)}. При исполнении этой операции сохраняется первоначальная схема отношения. Условия выбора В описывают с помощью арифметических операторов сравнения q={=,≠,>,≥,<,≤} и/или логических операторов Ψ={&,∨,¬} и имеют один из форматов (k – некоторая константа, принадлежащая соответствующему домену): · B=(Аi=k) означает выбор в заданном отношении кортежей, для которых атрибут Аi имеет значение k; · B=(Аi≠k) означает выбор в заданном отношении кортежей, для которых атрибут Аi имеет значение, отличное от k; · В=(Аi>k) означает выбор в заданном отношении кортежей, для которых атрибут Аi имеет значение, большее k; · В=(Аi≥k) означает выбор в заданном отношении кортежей, для которых атрибут Аi имеет значение, не меньшее k. Возможно обобщение условия В: 1) B=((Ai,…, Aj,..., Ak)=(ki,…, kj,…, kk)) означает выбор в заданном отношении кортежей, для которых атрибут Ai имеет значение ki, атрибут Aj имеет значение kj, атрибут Ak имеет значение kk. 2) Если условия заданы логическими операторами, то B=(Bi&Bj) означает «выполнить условие Bi и Bj», а B=(Bi∨Bj) – «выполнить условие Bi или Bj» и т. п. Использование функциональных символов {+,-,*,/} в формировании условий запрещено. Примеры использования оператора выбора: 1. Выбрать кортежи отношения r1 по значению ключа А1=а2, т.е.сформировать новое отношениеr’1=δB(r1,(А1=а2)). Решение:
2. Выбрать кортежи отношения r2 по значению атрибута A3=1, т.е. сформировать новое отношение r’2= δB(r2,(А3=1)). Решение:
3. Выбрать кортежи отношения r5 по значениям атрибутов: A1=a1,A2=b1,A3=1, т.е. r’5= δB(r5,((A1=a1)&(A2=b1)&(A3=1))). Решение:
Оператор проекции πrel(r)позволяет формировать из данного отношения r со схемой rel(r)=(A1,A2,..,An) новое отношение r’ со схемой rel(r’)=(Ai,Aj,…,Ak), где 1£i,j,k£n, путем удаления и/или переупорядочения атрибутов: πrel(r,Ai,Aj,…,Ak). Т.е. r’=π rel (r)={ t’| |rel(r’)|≤ |rel(r)|}. Число кортежей формируемого отношения равно числу кортежей заданного отношения, т.е. |r’|=|r| (это условие ограничивает область применения данного оператора, распространяя его только на ключевые атрибуты). Примеры использования оператора проекции: 1. Выбрать только ключи отношения r1, т.е. r’1= πrel(r1,A1). Решение:
2. Выбрать только ключи отношения r3, т.е. r’3= πrel(r3,A1,A5). Результат:
Оператор дополнения ¬r позволяет формировать из данного отношения r новое отношение r’, кортежи которого не совпадают по значению атрибутов с кортежами данного отношения. Для этого необходимо найти множество всех кортежей со схемой заданного отношения rel(r) на области определения D= и удалить из этого множества кортежи заданного отношения r. Например, найти дополнение для отношения r3, т.е. сформировать r’3=Ør3. Решение: 1) Сформируем множества значений атрибутов, составляющих отношений r3: D1={a1,a2,a3}, D2={c1,c2}, D3={d1,d2,d3}.
2) Определим все комбинации элементов доменов отношения r3:
2) Исключим из таблицы размещений кортежи, принадлежащие r3 (выделены курсивом):
3) Результат:
Дата добавления: 2014-01-04; Просмотров: 264; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |