Операции с данными в реляционной модели
Операции обработки данных включают операции над строками (кортежами) таблиц (отношений) и операции над отношениями, осуществляющие обработку данных нескольких отношений.
Операциями, выполняемыми на уровне строк отношений, являются включение, удаление, обновление. При включении в таблицу добавляется новая строка (кортеж). Для выполнения этой операции требуется задать имя таблицы и указать значения атрибутов новой строки (значения ключа задается обязательно). При удалении из таблицы удаляется строка. Для выполнения этой операции требуется задать имя таблицы и указать значение первичного ключа удаляемой строки. Для удаления группы строк надо задать значение вторичного ключа. При обновлении осуществляется изменение значений атрибутов в строках. Для обновления требуется задать имя таблицы, значение первичного ключа для идентификации обновляемой строки, а также указать имена атрибутов и их новые значения.
Операции над отношениями. Операторы реляционного языка обрабатывают таблицу-отношение как единый объект. При этом результатом обработки всегда является новая таблица-отношение, которая также может быть обработана. Основными операциями над отношениями реляционной модели данных являются традиционные операции над множествами: объединение, пересечение, разность (вычитание), декартово произведение, а также специальные операции: выбор, проекция, соединение и деление множеств. Совокупность этих операций образует полную алгебру отношений. Рассмотрим основные операторы языка реляционной алгебры.
Объединение – операция выполняется над двумя совместными отношениями R1, R2 (с идентичной структурой – d1, d2, …,dn). В результате операции объединения строится новое отношение R = R1 U R2. Отношение R имеет тот же состав атрибутов и совокупность кортежей исходных отношений. Причем, в эту совокупность не включаются дубликаты.
Пример.Ниже приведены исходные отношения: R1 «Клиенты банка А» (табл. 3.5) и R2 «Клиенты банка В» (табл. 3.6) и результаты объединения – R (табл. 3.7).
Таблица 3.5
R1 «Клиенты банка А»
Город | Фамилия | |
К11 К12 К13 | Москва Санкт-Петербург Воронеж | Петров Смирнов Соколов |
Таблица 3.6
R2 «Клиенты банка В»
Город | Фамилия | |
К21 К22 К23 | Н. Новгород Москва Тверь | Голова Петров Симакова |
Таблица 3.7
R «Клиенты»
Город | Фамилия | |
К11 К12 К13 К21 К23 | Москва Санкт-Петербург Воронеж Н. Новгород Тверь | Петров Смирнов Соколов Голова Симакова |
В новое отношение вошел кортеж К22, так как он дублирует кортеж К11.
Пересечение – операция выполняется над двумя совместными отношениями R1, R2. Результирующее отношение RP = R1 З R2 содержит одинаковые кортежи, которые есть в каждом из двух исходных. Результат пересечения имеет тот же состав атрибутов, как и в исходных.
Пересечение двух отношений R1 «Клиенты банка А» и R2 «Клиенты банка В» дает отношение R «Клиент» (табл. 3.8).
Таблица 3.8
Дата добавления: 2021-01-26; просмотров: 308;