Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Теоретико – множественные операцииСодержание книги
Поиск на нашем сайте Два отношения считаются совместимыми по типу или одного и того же типа, если оба отношения имеют одно и тоже множество атрибутов – одноименные атрибуты определены на доменах состоящих из элементов одного типа.
Пример. Даны два отношения C и D, совместимые по типу: С
D
1. Объединение - если даны отношения С и D одного и того же типа, то объединение этих отношений (С UNION D) является отношение того же типа с телом, состоящим из всех кортежей t, присутствующих в С или D или в обоих отношениях. (С UNION D)
Повторяющиеся кортежи удаляются по определению.
2. Разность – если даны два отношения С и D одного и того же типа, то разность этих отношений С MINUS D является отношение того же типа с телом состоящим из всех кортежей t таких, что t присутствует в С, но не в D.
С MINUS D
D MINUS С
3. Пересечение – если даны отношения С и D одного и того же типа, то пересечением этих отношений С INTERSECT D является отношение того же типа с телом, состоящих из всех кортежей t таких, что t присутствует одновременно в С и D. Повторяющиеся кортежи удаляются по определению отношения.
С INTERSECT D
4. Декартово произведение. Здесь отношения могут иметь разные схемы, необязательно совместимые по типу. Перед выполнением декартова произведения необходимо переименовать атрибуты отношений С и D так, чтобы отношения не имели одноименных атрибутов. Декартовым произведением двух отношений С и D (С TIMES D), не имеющих общих атрибутов, называется отношение с заголовком, представляющим собой сцепление (объединение) заголовков отношений С и D и телом, представляющим множество кортежей, которые получаются путем сцепления каждого кортежа отношения С с каждым кортежем из D. Даны отношения С и D:
D C
Декартово произведение отношений С и D: С TIMES D
Кардинальное число полученного отношения равно произведению кардинальных чисел отношений С и D –девяти, а степень равна сумме степеней отношений С и D – двум.
2. Специальные операции: Проекция – это унарная операция на отношениях, т.е. в этой операции участвует только одно отношение. Проекцией отношения, имеющего множество атрибутов R на некоторый список имен атрибутов L, называется отношение с заголовком, определяемым списком L и телом, множество кортежей которого получается из кортежей исходного отношения путем вычеркивания элементов соответствующих атрибутам R-L. Проекция дает вертикальное подмножество отношений. Пример1. Показать имена и статус всех поставщиков.
S {SNAME, STATUS}
Проекция, в который список атрибутов пустой называется нулевой проекцией. Часто удобно указывать не те атрибуты, по которым берется проекция, а те которые проекцией отбрасываются. P {All BUT WGT}
Выбор (селекция). Выбором из отношения D по условию F называется отношение имеющие тот же заголовок, что и отношение D и множество кортежей из исходного отношения для которых проверка условий F дает значение – истина. D WHERE X literal В качестве операций могут быть указаны операции сравнения (>,<,= и др.). Выбор дает горизонтальное подмножество кортежей. Литерал – это значение, указанное непосредственно в тексте программы. Пример2. Показать всю информацию о деталях красного цвета.
P WHERE COLOR= Red’
Соединение. Операция реляционной алгебры, связывающая отношения. Соединения бывают различных видов. Рассмотрим - соединение и естественное соединение. - соединение (соединение по условию). - соединением отношения С по атрибуту Х с отношением D по атрибуту Y называется результат вычисления следующего выражения (С TIMES D) WHERE X Y Если «>», то выбирать строки, где X > Y. Такое - соединение называется “ больше,чем”. Даны два отношения C и D. Выполнить - соединение отношений C и D по условию B < X. С D
(C TIMES D) WHERE B < X
Эквисоединение (равносоединение). Эквисоединение – это тета соединение, основанное на равенстве значений определенных столбцов. Здесь оператор равен «=»
(C TIMES D) WHERE X=Y Естественное соединение. Естественным соединением (C JOIN D) отношений C и D, имеющих множество атрибутов X,Y и Y,Z соответственно, где Y общее подмножество атрибутов из C и D, определенных на одних и тех же доменах, называется отношение с заголовком { X,Y,Z } и телом, содержащим множество кортежей таких, для которых в отношении C значение атрибута X равно x, а Y равно y, и в отношении D значение атрибута Z равно z. Пример естественного соединения отношений C и D: C D
C JOIN D
Пример3. Получить всю информацию о поставщиках и поставках. Выполнить естественное соединение (S JOIN SP) отношений S и SP.
Найдем сначала декартово произведение отношений S и SP. Перед выполнением этой операции необходимо переименовать атрибуты отношений так, чтобы у них не было одинаковых атрибутов. Переименуем атрибуты S# в отношении SP в атрибут SPS # S TIMES (SP RENAME S# As SPS#)
Таблица1. Декартово произведение отношений S и SP.
Выполним эквисоединение отношений S и SP. (S TIMES (SP RENAME S# As SPS#)) WHERE S# = SPS# Из предыдущей таблицы выберем строки, в которых значения атрибутов S# и SPS# равны. Получим следующее отношение.
Таблица 2. Эквисоединение отношений S и SP.
Если в этом отношении (Таблица 2) опустить один атрибут, например SPS#
((S TIMES (SP RENAME S# As SPS#)) WHERE S# = SPS#){All BUT SPS#}, (А)
то получим естественное соединение отношений S и SP. (S JOIN SP) (В)
Таблица 3. Естественное соединение отношений S и SP. Выражения (А) и (В) эквивалентны. Пример4. Определить имена поставщиков детали ‘P3’. Сначала выполняется естественное соединение отношений S и SP по общему атрибуту S#. Затем в результате соединения выбираются кортежи, в которых P# = ‘P3’ Получаем всю информацию о поставщиках и поставках детали ‘P3’.
(S JOIN SP) WHERE P = ‘P3’ (С)
Далее выполняется проекция по атрибуту SNAME полученной выборки:
((S JOIN SP) WHERE P# = ‘P3’){SNAME} (D)
Результат запроса:
Предыдущее выражение (D) можно преобразовать в логически эквивалентное и более рациональное выражение следующего вида: ((SP WHERE P# = ‘P3’) JOIN S){SNAME} (F)
Реляционная алгебра может служить хорошим основанием для оптимизации.
Деление. Пусть отношения С и D имеют заголовки {X1, X2, …, XM} {Y1, Y2, …, YN} соответственно. Заголовки не пересекаются. Пусть имеется отношение Z с заголовком {X1, X2, …, XM, Y1, Y2,…, YN}. Результат деления отношения С на отношение D по отношению Z (C DIVIDEBY D PER Z, где отношение С - делимое, отношение D - делитель, Z - отношение-посредник) называется отношение, содержащее такие значения Х из отношения С, для которых соответствующие значения Y из Z включают все значения Y из D. Z
С
D
C DIVIDEBY D PER Z
Лекция 5. Реляционное исчисление.
Реляционная модель в части манипулирования данными построена на базе реляционной алгебры и реляционного исчисления.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2017-01-25; просмотров: 361; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.156 (0.006 с.) |