Читаем Базы данных: конспект лекций полностью

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

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

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

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

Пусть нам даны два отношения r1(S1) и r2(S2) с различными схемами отношений S1 и S2, не пересекающимися друг с другом.

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

1) r3 (S2 ∪ S1) ≔ r1(S1) × Pr2(S2);

r3 (S2 ∪ S1) это просто результат внутреннего соединения отношений r1(S1) и r2(S2). Левое внешнее соединение является производной операцией именно от операции внутреннего соединения, поэтому мы и начинаем наши построения с нее;

2) r4(S1) ≔ r 3(S2 S1) [S1];

Таким образом, с помощью унарной операции проекции, мы выделили все соединимые кортежи левого исходного отношения-операнда r1(S1). Результат обозначили r4(S1) для удобства применения;

3) r5 (S1) ≔ r1(S1) \ r4(S1);

Здесь r1(S1) все кортежи левого исходного отношения-операнда, а r4(S1) – его же кортежи, только соединимые. Таким образом, при помощи бинарной операции разности, в отношении r5(S1) у нас получились все несоединимые кортежи левого отношения-операнда;

4) r6(S2)≔ {∅(S2)};

{∅(S2)} это новое отношение со схемой (S2), содержащее всего один кортеж, причем составленный из Null-значений. Для удобства мы обозначили это отношение r6(S2);

5) r7 (S2 ∪ S1) ≔ r5(S1) × r6(S2);

Здесь мы взяли полученные в пункте три, несоединимые кортежи левого отношения-операнда (r5(S1)) и дополнили их на схеме второго отношения-операнда S2 Null-значениями, т. е. декартово умножили отношение, состоящее из этих самых несоединимых кортежей на отношение r6(S2), определенное в пункте четыре;

6) r1(S1) →× P r2(S2) ≔ (r1 × P r2) ∪ r7 (S2S1);

Это и есть левое внешнее соединение, полученное, как можно видеть, объединением декартового произведения исходных отношений-операндов r1 и r2 и отношения r7 (S2 S1), определенного в пункте пятом.

Теперь у нас имеются все необходимые выкладки для определения не только операции левого внешнего соединения, но по аналогии и для определения операции правого внешнего соединения. Итак:

1) операция левого внешнего соединения в строгом формулярном виде выглядит следующим образом:

r1(S1) →× P r2(S2) ≔ (r1 × P r2) ∪ [(r1 \ (r1 × P r2) [S1]) × {∅(S2)}];

2) операция правого внешнего соединения определяется подобным образом операции левого внешнего соединения и имеет следующий вид:

r1(S1) →× P r2(S2) ≔ (r1 × P r2) ∪ [(r2 \ (r1 × P r2) [S2]) × {∅(S1)}];

Эти две производные операции имеют всего два свойства, достойные упоминания.

1. Свойство коммутативности:

1) для операции левого внешнего соединения:

r1(S1) →× P r2(S2) ≠ r2(S2) →× P r1(S1);

2) для операции правого внешнего соединения:

r1(S1) ←× P r2(S2) ≠ r2(S2) ←× P r1(S1)

Итак, мы видим, что свойство коммутативности не выполняется для этих операций в общем виде, но при этом операции левого и правого внешнего соединения взаимно обратны друг другу, т. е. выполняется:

1) для операции левого внешнего соединения:

r1(S1) →× P r2(S2) = r2(S2) →× P r1(S1);

2) для операции правого внешнего соединения:

r1(S1) ←× P r2(S2) = r2(S2) ←× Pr1(S1).

2. Основным свойством операций левого и правого внешнего соединения является то, что они позволяют восстановить исходное отношение-операнд по конечному результату той или иной операции соединения, т. е. выполняются:

1) для операции левого внешнего соединения:

r1(S1) = (r1 →× P r2) [S1];

2) для операции правого внешнего соединения:

r2(S2) = (r1 ←× P r2) [S2].

Перейти на страницу:

Все книги серии Экзамен в кармане

Антикризисное управление: конспект лекций
Антикризисное управление: конспект лекций

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

Елена Алексеевна Бабушкина , Елена Бабушкина , Людмила Верещагина , Людмила Сергеевна Верещагина , Олеся Бирюкова , Олеся Юрьевна Бирюкова

Маркетинг, PR / Управление, подбор персонала / Финансы и бизнес

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных