Основы реляционной алгебры

Поскольку каждая таблица в реляционной БД является отношением, действия над ними базируются на операциях реляционной алгебры. Исключение составляют лишь операции создания и заполнения таблиц данными (присваивания), а также операции описания и переименования столбцов таблицы.

В теории реляционной алгебры отношение рассматривается как множество, строки таблицы называются кортежами, столбцы — атрибутами. Над отношениями выполняются традиционные операции теории множеств.

Ограничение отношения (выборка) создание нового от ношения отбором в него строк отношения-операнда (исходного отношения), которые удовлетворяют условию ограничения.

Проекция отношения — создание нового отношения отбором в него определенных столбцов отношения—операнда.

Объединение отношений — создание нового отношения, со держащего все кортежи отношений-операндов. При этом операнды должны иметь одинаковые атрибуты.

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

номер цеха, код продукции, дату выпуска и количество выпущенной продукции, с данными общей таблицы ВЫПУСК ПРОДУКЦИИ, имеющей ту же структуру. Для этого к кортежам

ВЫПУСК ПРОДУКЦИИ (Номер цеха, Код продукции, Дата выпуска, Количество)

добавляют кортежи

НОВАЯ ПРОДУКЦИЯ (Номер цеха, Код продукции, Дата выпуска, Количество).

Поскольку атрибуты приведенных операндов совпадают, таблица НОВАЯ ПРОДУКЦИЯ объединяется с исходной.

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

Пример. Рассмотрим пересечение отношений с выполнением операций ограничения и проекции.

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

Оценка = Отлично.

В результате получим списки отличников группы по дисциплинам.

Теперь выполним проекцию полученных отношений, отобрав из каждого из них только атрибуты Номер зачетной книжки и ФИО студента. Получим новые списки отличников, в которых остались только номера зачетных книжек и фамилии студентов.

Таким образом, получим искомое отношение — СПИСОК ОТЛИЧНИКОВ, содержащее номера зачетных книжек и фамилии, общие для всех списков отличников.

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

Для решения этой задачи выполняем ограничение отношения ВЫПУСК ПРОДУКЦИИ по следующему условию: дата выпуска меньше последней даты прошлого квартала.

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

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

Разность отношений исходной и конечной таблиц даст искомые сведения.

Произведение отношений — создание нового отношения, в котором имеются все атрибуты 1-го и 2-го операндов, а строки получены по парным сцеплением строк их отношений. Число кортежей — мощность нового отношения — равна произведению мощностей 1-го и 2-го отношений. При этом множества атрибутов от ношений не должны пересекаться.

Произведение отношений используется при решении задач подбора пар из двух множеств, например поставщиков и потребителей. Для этого сначала составляют все возможные пары, а затем по конкретному критерию отбирают из них подходящие.

Пример. По двум заданным отношениям требуется найти произведение. деление отношений — создание нового отношения, содержащего атрибуты 1-го операнда, отсутствующие во 2-м операнде, и кортежи 1-го операнда, которые совпали с кортежами 2-го операнда. Для выполнения этой операции 2-й операнд должен содержать лишь атрибуты, совпадающие с атрибутами 1 -го.

Пример. Требуется отобрать студентов группы, получающих стипендию, используя список, содержащий следующие сведения: ФИО, дата рождения, шифр группы и признак наличия стипендии (да, нет).

Для решения задачи создадим вспомогательное отношение с атрибутами Шифр группы и Признак наличия стипендии. Затем заполним один кортеж этого отношения, поместив в него шифр заданной группы и отметку о получении стипендии (да).

В результате деления исходного списка на вспомогательное отношение получим искомый список с атрибутами ФИО и Дата рождения.

Соединение отношений — создание нового отношения, кортеж которого является результатом сцепления кортежей операндов (исходных отношений).

Различают соединения отношений двух видов: естественное и по условию.

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

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

Одни и те же данные могут группироваться в таблицы различными способами. Группировка атрибутов в отношениях должна быть рациональной, т. е. минимизирующей дублирование данных и упрощающей процедуры их обработки и обновления. Устранение избыточности данных, являющееся одной из важнейших задач при проектировании баз данных, обеспечивается нормализацией.

 








Дата добавления: 2015-11-06; просмотров: 1167;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.