Операции над данными в реляционной модели


Все операции над данными в реляционной модели можно разделить на две группы: операции обновления таблиц-отношений и операции обработки таблиц-отношений.

К операциям обновления относятся:

1.Операция Включить – добавляет новый кортеж в таблицу-отношение. Требует задания имени таблицы и обязательного значения ключей. Выполняется при условии уникальности значения ключа. Добавить новую строку со значением ключа, которое уже есть в таблице невозможно.

2.Операция Удалить – удаляет один или группу кортежей. Требует задания имени таблицы, имени поля и параметров значения полей, кортежи с которыми должны быть удалены.

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

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

К операциям обработки относятся:

1. Операция Объединения – выполняется над двумя односхемными таблицами-отношениями. Результатом объединения является построенная по той же схеме таблица-отношение, все кортежи первой таблицы и все кортежи второй таблицы. При этом кортежи-дубликаты в итоговой таблице устраняются (рис.56).

СКЛАД 1   СКЛАД 2
Код поставщика Название материала   Код поставщика Название материала
К11 МЕЛ   К21 МЕЛ
К12 ТЕТРАДЬ   К22 МЕЛ
К13 КАРАНДАШ   К23 РУЧКА

Таблица, полученная в результате операции объединения

 

СКЛАД
Код поставщика Название материала
К11 МЕЛ
К12 ТЕТРАДЬ
К13 КАРАНДАШ
К21 МЕЛ
К23 РУЧКА

Рис.56 Иллюстрация операции объединения

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

После выполнения операции пересечения над исходными таблицами-отношениями получим:

2040 МЕЛ

3. Операция Вычитания выполняется над двумя односхемными таблицами-отношениями. Результатом является таблица-отношение, построенная по той же схеме и содержащая только те кортежи первой таблицы, которых нет в составе кортежей второй таблицы.

После выполнения операции вычитания над исходными таблицами-отношениями получим:

4050 ТЕТРАДЬ

3070 КАРАНДАШ

4. Операция Декартова произведения выполняется над таблицами-отношениями с разными схемами. Результатом является таблица-отношение, схема которой включает все поля первой и все поля второй таблицы (рис.57). Кортежи результирующей таблицы образуются путем последовательного сцепления каждого кортежа первой таблицы-отношения с каждым кортежем второй таблицы. Количество кортежей результирующей таблицы соответственно равно произведению количества кортежей первой таблицы на количество кортежей второй таблицы.

Сотрудники первого отдела   Прохождение обследования   Прохождение обследования сотрудниками первого отдела
ФИО   Вид обследования Дата   ФИО Вид обследования Дата
Иванов И.И.   Сердечно-сосудистая система 1.12   Иванов И.И. Сердечно-сосудистая система 1.12
Петров П.П.   Желудочно-кишечный тракт 8.12   Иванов И.И. Желудочно-кишечный тракт 8.12
          Петров П.П. Сердечно-сосудистая система 1.12
          Петров П.П. Желудочно-кишечный тракт 8.12

Рис.57 Иллюстрация операции декартова произведения

5. Операция Выборка (горизонтальное подмножество) – выполняется над одной таблицей-отношением. Результатом является таблица-отношение той же схемы, содержащая подмножество кортежей исходной таблицы, удовлетворяющих условию выборки.

6. Операция Проекция (вертикальное подмножество)- выполняется над одной таблицей-отношением. Результатом является новая таблица-отношение, схема которой содержит только некоторое подмножество полей исходной таблицы (рис.58). Каждому кортежу исходной таблицы соответствует кортеж итоговой таблицы, образованный соответствующими значениями по полям, вошедшим в итоговую таблицу-отношение. При этом в итоговой таблице кортежи-дубликаты устраняются и поэтому мощность итоговой таблицы (количество кортежей) может быть равным или меньше исходной.

Служащие
Фамилия Номер лаборатории Должность
Иванов инженер
Петров инженер
Сидоров инженер
Федоров экономист

Берется проекция на поля «Номер лаборатории» и «Должность»

Номер лаборатории Должность
инженер
инженер
экономист

Рис.58 Иллюстрация выполнения операции проекция

Смысл операции проекции – переупорядочить столбцы в таблице-отношении и удалить одинаковые кортежи (кроме одного)

7) Операция Соединения – выполняется над таблицами-отношениями с различными схемами. В каждой таблице-отношении выделяется поле, по которому будет осуществляться соединение. При этом оба поля должны быть определены на одном и том же домене. Схема итоговой таблицы-отношения включает все поля первой таблицы-отношения и все поля второй таблицы-отношения (как в произведении). Кортежи итоговой таблицы-отношения образуются путем сцепления каждого кортежа из первой таблицы с теми же кортежами второй таблицы, значения которых по полю сцепления одинаковы (рис.59).

Документы с охраняемыми сведениями по ОКР   Журнал выдачи документов сотрудникам
Рег. № Тематика   Рег. № Дата ФИО
13/1-С Топливо   1.11 Иванов И.И.
251-СС Боезаряд   1.11 Иванов И.И.
1455-С Двигатель   251-СС 2.11 Петров П.П.
И-43С Привод   И-43С 2.11 Сидоров С.С.
      123-4/С 3.11 Петров П.П.
      3.11 Егоров Е.Е.
      1455-С 4.11 Петров П.П.
      675-И/С 4.11 Сидоров С.С
      И-43С 3.11 Петров П.П.

Соединение по полю «Рег.№»

Сотрудники, работающие с документами, содержащими охранные сведения
Рег. № Тематика Дата ФИО
251-СС Боезаряд 2.11 Петров П.П.
1455-С Двигатель 4.11 Петров П.П.
И-43С Привод 2.11 Сидоров С.С.
И-43С Привод 3.11 Петров П.П.

Рис.59 Иллюстрация выполнения операции соединения

8) Операция Деления выполняется над двумя таблицами-отношениями, первая из которых называется делимым, а вторая делителем. При этом схема таблицы-делителя должна состоять из подмножества полей таблицы делимого. Схема итоговой таблицы-отношения содержит только те поля таблицы-делимого, которых нет во второй таблице-делителе. Кортежи итоговой таблицы-отношения образуются на основе кортежей первой таблицы (делимого) по значениям полей, вошедших в итоговую таблицу при условии того, что если взять произведение (декартово) итоговой таблицы-отношения и второй таблицы-отношения (делителя), то образуются соответствующие кортежи первой таблицы (делимого) (рис.60).

Таблица-делимое Таблица делитель

Поездки граждан г. Урюпинска в Германию   Требуемое сочетание турфирм и городов Германии
ФИО Турфирма Город   Турфирма Город
Иванов И.И. «Евротур» Берлин   «Евротур» Берлин
Иванов И.И. «Веси» Гамбург   «Веси» Гамбург
Петров П.П. «Евротур» Гамбург      
Петров П.П. «Веси» Берлин      
Сидоров С.С. «Евротур» Берлин      
Сидоров С.С. «Веси» Гамбург      

Рис.60 Иллюстрация выполнения операции деления

Гражданин с требуемым сочетанием турфирм и городов

ФИО

Иванов И.И.

Сидоров С.С.

Рассмотренные операции реализуются соответствующими средствами СУБД (язык SQL).



Дата добавления: 2016-05-31; просмотров: 2108;


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

Воспользовавшись поиском можно найти нужную информацию на сайте.

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

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.