Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Операции реляционной алгебры. Постреляционная модель



В процессе обработки реляционных таблиц СУБД выполняет операции реляционной алгебры такие, как объединение, пересечение, декартово произведение, разность, проекция, выборка, соединение, деление.

Операции объединения, пересечения, разности производятся над двумя исходными отношениями R1 и R 2, имеющими  одинаковый состав и порядок атрибутов. Результатом является отношение такой же структуры.

Объединением двух отношений R1 U R2  называется отношение R, содержащее множество кортежей, принадлежащих либо R1, либо R2, либо обоим отношениям R1, R2 одновременно.

Пример 1

Пусть исходными отношениями являются отношения R1 и R2, которые содержат перечень номеров заказов и веса заказов, которые оформлялись двумя различными участками отдела сбыта:

             R1                          R2

Номер заказа Вес заказа   Номер заказа Вес заказа
1021 100   1021 100
1022 300   1022 300
1023 120   1024 500
1024 500   1025 300
1026 200      

Тогда объединение R1 U R2 содержит общий перечень заказов, которые оформлялись в отделе сбыта:

                                                                                                                                                                                                                                         R

Номер заказа Вес заказа
1021 100
1022 300
1023 120
1024 500
1025 300
1026 200

 

Пересечением отношений R1 Ç R2 называется отношение R, которое содержит множество кортежей, принадлежащих одновременно и R1, и R2.

Пример 2

  Пусть отношения R1, R2 такие же, как в примере 1. Тогда пересечение R1Ç R2 содержит перечень заказов, которые оформлялись обоими участками отдела сбыта:

                                                                                                                                                                                                                    R

Номер заказа Вес заказа
1021 100
1022 300
1024 500

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

Разностью отношений R1 и R2 называется отношение R, содержащее множество кортежей, принадлежащих R1  и не принадлежащих R2.

Пример 3

Пусть отношения R1, R2 такие же, как в примере 1. Тогда разность R1\ R2 содержит перечень заказов, которые оформлялись только на первом участке отдела сбыта:

R

Номер заказа Вес заказа
1023 120
1026 200

 

Операции проекции, выборки, соединения, деления являются специальными операции реляционной алгебры.

Операция проекции – это выбор атрибутов в отношении. Пусть в отношении R выбирается подмножество его атрибутов Y. Тогда проекцией PY (R) будет отношение, в которое входят все кортежи R, содержащие только значения атрибутов из подмножества Y.

Пример 4

Пусть отношение R есть таблица ЗАКАЗЫ, а подмножество Y включает два атрибута – «Номер заказа» и «Код клиента». Тогда проекцией PY (R) является отношение:

Номер заказа Код клиента
1020 АБ
1021 АА
1022 АС
1023 АА
1024 АБ

 

Для операции выборки задается условие выборки кортежей булевым выражением a(r), составленным из термов сравнения с помощью логических операций «И», «ИЛИ», «НЕ». Терм сравнения – выражение типа сравнения (в нем могут использоваться операции «=», «>», «<». «³», «£», «¹»). Результат операции выборки R[a(r)] на отношении R есть отношение, включающее кортежи, для которых истинно заданное условие.

Пример 5

Требуется выбрать заказы с номером 1021 из отношения:

                                        R1                                                                                                                                                                                                                                                                        

Номер заказа Вес заказа Номер участка
1021 100 1
1022 300 1
1023 120 1
1024 500 1
1026 200 1
1023 120 2
1021 100 2
1024 500 3

 

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

R

Номер заказа Вес заказа Номер участка
1021 100 1
1021 100 2

Операция соединения отношений R1  43 R2                      А1=А2

выполняется путем сцепления кортежей отношения R1  с кортежами отношения R2 при условии совпадения значения атрибута А1 отношения R1 со значением атрибута А2 отношения R2 (А1, А2 – атрибуты, задаваемые для сцепления). При этом в результирующее отношение R одинаковые атрибуты включаются только один раз.

Пример 6

Пусть отношение R1 – это таблица КЛИЕНТЫ, а отношение R2 – таблица ЗАКАЗЫ. Тогда соединением отношений R1, R2 по «Коду клиента» будет отношение:

R

Код клиента Клиент Адрес Номер заказа Дата заказа Вес заказа
АА БГЭУ Минск, пр-т Партизанский, 26 1021 01.02.06 100
АА БГЭУ Минск, пр-т Партизанский, 26 1023 20.03.06 120
АБ Сименс Мюнхен, ул. Лейбница, 8 1020 01.02.06 400
АБ Сименс Мюнхен, ул. Лейбница, 8 1024 28.05.06 600
АС Атлант Минск, пр-т Победителей, 61 1022 12.02.06 300

 

Операция деления выполняется над двумя отношениями R1, R2, имеющими атрибуты, определенные на одном домене. Пусть k1 – степень отношения R1, а k2 – отношения R2  и k1>k2. Тогда результат операции деления R1¸R2 есть отношение R степени k1-k2, любой кортеж которого вместе с любым кортежем R2  образует кортеж, имеющийся в R1.

Пример7

Пусть исходные отношения:

 R1                                                                                          R2

Код произво- дителя Произво- дитель Мероприятие Дата   Мероприятие Дата
П1 Сименс Рекламная акция 10.06.06   Рекламная акция 10.06.06
П1 Сименс Участие в выставке 20.06.06   Участие в выставке 20.06.06
П2 Атлант Рекламная акция 10.06.06      
П2 Атлант Участие в выставке 20.06.06      
П3 Горизонт Участие в выставке 20.06.06      

 

Тогда результатом операции деления R1¸R2 есть отношение :

                                           R

П1 Сименс
П2 Атлант

 

Постреляционная модель

Постреляционная модель данных в общем случае представляет собой расширенную реляционную модель, снимающую ограничение неделимости значений полей. То есть, допускаются многозначные поля, значения которых состоят из подзначений. Пример постреляционной модели – таблица, представляющая собой совокупность данных связанных реляционных таблиц КЛИЕНТЫ и ЗАКАЗЫ.

 

Код клиента Номер заказа Клиент Адрес Дата заказа Вес заказа

АА

1021

БГЭУ

Минск, пр. Партизанский, 26

01.02.06 100
1023 20.03.06 120

АБ

1020

Сименс

Мюнхен, ул. Лейбница, 8

01.02.06 100
1024 28.05.06 600
АС 1022 Атлант Минск, пр. Победителей, 61 12.02.06 300

                       

Достоинства постреляционной модели данных:

· возможность представления связанных реляционных таблиц одной постреляционнной таблицей. Это обеспечивает высокую наглядность представления данных и повышение эффективности их обработки;

· отсутствие ограничений на длину полей и их количество в записях таблицы.  

Недостаток постреляционнной модели – сложность в обеспечении целостности данных.


Поделиться:



Последнее изменение этой страницы: 2019-04-10; Просмотров: 254; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.026 с.)
Главная | Случайная страница | Обратная связь