Студопедия

КАТЕГОРИИ:


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

Специальные реляционные операторы

Операция выборки sF(R) возвращает подмножество кортежей отношения R, удовлетворяющее предикату F (условию).

Пример 5: Вывести нумерацию наименований деталей и их количество таких, что количество превышает 150 единиц.

Выпуск продукции

Номер цеха Наименование деталей Кол-во
  Болт  
  Винт  
  Болт  
  Гвоздь  
  Шуруп  

sкол-во>150(выпуск продукции)

Номер цеха Наименование деталей Кол-во
  Болт  
  Болт  

Таким образом, операция выборки возвращает горизонтальное подмножество исходного отношения.

Проекция Патр1, атр.2,.., атр.n (R) возвращает отношение, полученное из исходного отношения путем вычеркивания из него некоторых атрибутов. Кортежи-дубликаты при этом исключаются.

Пример 6: Получить список наименований деталей, которые выпускаются на заводе.

 

Выпуск продукции

Номер цеха Наименование деталей Кол-во
  Болт  
  Винт  
  Болт  
  Шуруп  

 

Пдеталь(выпуск продукции)

Деталь
Болт
Винт
шуруп

 

Операция деления

Пусть отношение R определено на множестве атрибутов А, а отношение S на множестве атрибутов B, причем В является подмножеством А, тогда множество С=А-В это те атрибуты, которые входят в отношение R и не входят в отношение S.

Результатом выполнения операции деления R÷S называется отношение, состоящее из множества кортежей отношения R, определенных на множестве атрибутов С, которые соответствуют (кортежи) комбинации всех кортежей отношения S.

Эта операция является избыточной и может быть реализована следующей последовательностью:

1) Т1С(R)

2) Т2С((Т1×S)-R)

3) Т312

Пример 7: Пусть отношение R содержит сведения о выпуске продукции в цехах завода:

R

Наименование цеха Наименование деталей Шифр деталей
  Болт  
  Шуруп  
  Гвоздь  
  Болт  
  шуруп  
  гвоздь  

 

 

S

Наименование деталей Шифр деталей
Болт  
Шуруп  
гвоздь  

 

Пусть отношение S содержит номенклатуру изделий, выпускаемых на заводе.

Запрос: Получить список цехов, в которых выпускается полная номенклатура изделий. Реализуется операцией деления.

R÷S

Номер цеха
 

Рассмотрим последовательность операций:

1) Т1С(R)= П номер цеха(R)

Номер цеха
 
 
 

 

2) Т2= Т1×S

Моделируем ситуацию, когда все цеха выпускают полную номенклатуру продукции

Номер цеха Наименование деталей Шифр деталей
  Болт  
  Шуруп  
  Гвоздь  
  Болт  
  Шуруп  
  Гвоздь  
  Болт  
  Шуруп  
  Гвоздь  

 

3) Т32-R= П номер цеха 2-R)

Получим список цехов, в которых в действительности вся номенклатура не выпускается

Номер цеха
 
 

 

4) Т=Т13

Номер цеха
 

Различают следующие виды соединений:

- Ө-соединение (тетто)

- внешнее соединение (открытое)

- соединение по эквивалентности

- полусоединение

Ө-соединение отношений R Ө S называется отношение, содержащее подмножество декартового произведения отношений R и S, кортежи которого удовлетворяют заданному предикату F (условию).

Предикат F имеет следующий вид R.ai Ө S.bi, где ai – один из атрибутов отношения R, bi – один из атрибутов отношения S, Ө - одна из операций отношения (>, <, >=, <=, <>,! и т.д.), причем несколько таких условий могут объединяться с помощью логических операций ^ «и», ν «или».

Операция соединения является также избыточной, т.к. ее можно заменить sF(R×S)

Пример8: Получить адрес поставщика детали «гвоздь»

R

поставщик адрес
ЗАО «стрела» Оренбург
З-д «сверл» Гай
ЮУМЗ Орск

 

 

S

Шифр деталей наименование поставщик
  Болт ЗАО «стрела»
  Шуруп З-д «сверл»
  гвоздь ЮУМЗ

 

R |><| R.поставщик=S.поставщик ^ R.наименование=гвоздь S

Соединение по эквивалентности

Пример 9: Получить список деталей и их поставщиков, включая адреса.

R |><| R.поставщик=S.поставщик S

Внешние (открытые) соединения

Левым внешним соединением отношения R и S (R)∆ F S) называется отношение, которое содержит те кортежи отношения R, для которых не нашлось совпадений в общих столбцах отношения S. Отсутствие совпадающих значений в результирующем отношении обозначается определителем null.

Пример10: Пусть отношение R содержит список абитуриентов, отношение S отражает реальную ситуацию, когда не все абитуриенты прошли тестирование.

 

R

номер ФИО Спец-сть
  Иванов ПИ
  Петров ПоВТ
  Семенов ВМК

S

Номер Дата тестирования Кол-во баллов
  8.07.05  
  9.07.05  

 

 

Запрос: Получить список абитуриентов с результатами их тестирования, включая тех абитуриентов, которые не успели пройти тестирование.

 

R)∆ R.номер абитуриента=S.номер абитуриента S

 

Номер_аб ФИО Спец. Дата Кол-во баллов
  Иванов ПИ Null Null
  Петров ПоВТ 8.07.05  
  Семенов ВМК 9.07.05  

 

Правым внешним соединением отношений R и S (R ∆(F S) называется отношение, которое содержит те кортежи отношения S, для которых не нашлось совпадений в общих столбцах отношения R. Отсутствие совпадающих значений в результирующем отношении обозначается определителем null.

Предыдущий запрос можно реализовать и с помощью правого открытого соединения.

S ∆(S.номер абитуриента=R.номер абитуриента R

Существует также полное внешнее соединение отношения Rи S (R)(F S), при этом в результирующее отношение входит кортеж не нашедший общих значений как в R, так и в отношении S.

Полусоединения:

R ∆F S = ПA (R |><| F S), где А-множество атрибутов R.

Операция полусоединения отношения R ∆F S возвращает отношение, которое содержит только кортежи отношения R, входящее в соединение по предикату F этих отношений.

Пример 11: Получить список абитуриентов, прошедших тестирование.

 

номер ФИО Спец.
  Петров ПоВТ
  Семенов ВМК

 

Перечень источников:

 

1. Дейт К. Дж. Введение в систему баз данных.: перевод с английского – 6 издание – К.: Диалектика, 1998. – 784 с.

2. Хомоненко А.Д. Базы данных: Учебник/Под ред.проф А.Д.Хомоненко.-СПб.:Корона, 2004.- 736 с.

Раздел 2. Основы проектирования

<== предыдущая лекция | следующая лекция ==>
Операции реляционной алгебры | Виды моделей при проектировании базы данных
Поделиться с друзьями:


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


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



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




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