Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Операция деления отношений

 

Эта операция наименее очевидна из всех операций реляционной алгебры Кодда и поэтому нуждается в более подробном объяснении. Пусть заданы два отношения – A с заголовком { a1, a2,..., an, b1, b2,..., bm } и B с заголовком { b1, b2,..., bm }. Будем считать, что атрибут bi отношения A и атрибут bi отношения B (i = 1, 2, …, m) не только обладают одним и тем же именем, но и определены на одном и том же домене. Назовем множество атрибутов { aj } составным атрибутом a, а множество атрибутов { bj } – составным атрибутом b. После этого будем говорить о реляционном делении “бинарного” отношения A { a, b } на унарное отношение B { b }.

 

По определению результатом деления A на B (A DIVIDE BY B) является “унарное” отношение C { a }, тело которого состоит из кортежей v таких, что в теле отношения A содержатся кортежи v UNION w такие, что множество { w } включает тело отношения B. Операция реляционного деления не является примитивнрой и выражается через операции декартова произведения, взятия разности и проекции. Мы покажем это в следующей лекции.

 

Для иллюстрации этой операции предположим, что в базе данных служащих поддерживаются следующие отношения: СЛУЖАЩИЕ, как оно было определено ранее, и унарное отношение НОМЕРА_ПРОЕКТОВ{ПРО_НОМ} (рис. 3.11). Тогда запрос СЛУЖАЩИЕ DIVIDE BY НОМЕРА_ПРОЕКТОВвыдаст данные обо всех служащих, участвующих во всех проектах (результат операции приведен также на рис. 3.11).

 

Отношение НОМЕРА_ПРОЕКТОВ

 

ПРО_НОМ
 
 

 

Результат операции СЛУЖАЩИЕ DIVIDE BY НОМЕРА_ПРОЕКТОВ

 

СЛУ_НОМЕР СЛУ_ИМЯ СЛУ_ЗАРП
  Иванов 22400.00
  Петров 29600.00

 

Рис. 3.11. Пример реляционного деления

 

<== предыдущая лекция | следующая лекция ==>
Проекты | Лекция 4. Базисные средства манипулирования реляционными данными: алгебра A Дейта и Дарвена
Поделиться с друзьями:


Дата добавления: 2014-01-03; Просмотров: 328; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.