|
Программирование >> Реляционные базы данных
Пример 4.1. Рассмотрим лва отношения R t\ S, экземпляры отношения MovieSlar из раздела 3.9. Текущие экземпляры Л и 5 показаны на рис. 4.1. Объединение Ли 5:
В результате кортеж для Кэрри Фишер, входящий в оба отношения, появляется всего один раз. Пересечение RrS:
Здесь появляется только кортеж для Кэрри Фишер, поскольку только он входит в оба отношения. Разность R - S: пате address Mark Hamill 456 Oak Rd., Brentwood gender M birthdale Кортежи для Фишер и Хэмилла входят в Я, поэтому являются кандидатами для R - S. Но кортеж для Фишер входит и в S, поэтому его нет в R - S. 4.1.2 Проекция Оператор проекции применяется к отношению Длля получения нового отношения, содержащего только некоторые столбцы R. Значение выражения а>...а.) это отношение, содержащее только столбцы А, .., А отношения R. Схема результирующего значения - это множество атрибутов {A.Aj,А }, которое обычно показывается 8 порядке перечисленных атрибутов.
Pnt. 4.2. Отношение Movie Пример 4.2. Рассмотрим отношение Movie со схемой, ириведенной в разделе 3.9. Экземпляр этого отношения показан на рис. 4.2. Его можно проецировать иа три первых атрибута с помощью выражения i/*fe -,to ,/.(MovieJ true Заметим, что в нем только один кортеж, так как все три кортежа на рис. 4.2 имеют одно и то же значение своих компонентов для атрибута inCoIor. □ 4-1.3 Отбор Оператор отбора, примененный к отношению R, даст новое отношение с пол-множеством кортежей R. Кортежи нового отношения удоьпстворяют некоторому условию С, включающему в себя атрибугы Л. Операция отбора обозначается Of (Л). Схема результирующего отношения совпадает со схемой R, и атрибуты в ней обычно показаны в том же порядке, в каком онн ачодят в R. С- выражение условного типа. Такие выражения применяются в обычных языках програм.мнровиния. Например, в языках С или Pascal условное выражение следует за ключевым словом if Еаинственное различие состоит в том. что операнды в С- это константы или атрибуты R. Оператор С применяется к каждому кортежу / отношения Л: при этом каждый атрибут А, входящий в условие С, заменяется компонентом кортежа t для атрибута А. Еслн после таких подстановок вместо каждого атрибута С это условие истинно, то кортеж i включается в результат ос(Л); в про-швном случае он в результат не входит. Пример 4.3. Рассмотрим отношение Movie, показанное на рис. 4.2. Значением выражения o, ,j , юо (Movie) является отношение
Первый кортеж удовлетворяет условию lengih>\tXi. так как при подстановке вместо 1епф значения 124, найденного в компоненте первого кортежа для атрибута length, усло нем спанет выражением 124> 100. Оно истинно, поэтому первый корзж принимается Точно гак же можно объяснить, почему входит в результат второй кортеж нз рнс. 4.2. Компоиен! length третьего кортежа - 9з. Поэтому после подстановки пазучает-ся ложное условие 95 > 100 и этот кортеж не включается в резулыат □ Пример 4.4, Допустим, что в отношении Movie(title. year, length. inColor. studioName. producerC*) В результате получается oTHouieHiie Ше : year length Star Wars ПэТТ : 124 Mighty Ducks 1991 , 104 Waynes World ,1992 j 95 В качестве другого примера можно взять проекцию на атрибут inCoor с помощью выражения ncowiovie). В результате получается отношение с единственным столбцом: inColor нужно выбрать множество кортежей, представляющих фильмы стдии Fox, которые длятся не менее 100 мин. Для того чтобы получить это более сложное условие, применим связку AND к двум подусловиям: с/пщль iiiOAMDKi/riiteMCTo- (Movie) и отношение с единственным кортежем title ] year length inColor Star Wars i 1977 I 124 StudioName 1 producerC# true 12345 4-1.4 Декартово произведение Декартово произведение (или просто произведение) двух множеств Я и 5-это множество пар, причем первым элементом каждой пары является элемент множества /?, а вторым - элемент множества S. Произведение обозначается RkS. Если Л и 6- отношения, их произведение, по существу, остаезся таким же. Но поскольку членами Л и 5 являюзся кортежи, состоящие обычно из нескольких компонентов, в результате соединения кортежа из R с кортежем из S получается более длинный кортеж, содержащий по одному компоненту для каждого компонента кортежей, состаапяюших данную пару. При этом компоненты из Л предшествуют компонентам из S. Реляционная схема для результирующего отношения - это объединение схем для R и S. Если же Л и 5 имеют какие-то общие атрибуты, необходимо ввести новое имя по крайней мере для одного атрибута из каждой пары идентичных атрибутов. Чтобы уточнить, откуда взят атрибут А, входящий в схемы R а S, мы пишем R.A для атрибута из R и S.A для атрибута из S. Отношение R Отношение 5 Произведение Ry S Рис. 4.3. Део отношений и их декортово произведвнив
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |