Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
бИЛЕТЫ_GOSam.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.46 Mб
Скачать
  1. Операции над множествами

Теоретико-множественные операторы

Объединение

Группа 125

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

Реляционное объединение (relational union) - это результат выполнения операции конкатенации над двумя наборами записей. Эту операцию можно представить как реляционную «версию» сложения. Результат операции объединения набора записей А и набора записей В - простое добавление всех записей из набора А в набор В.

Синтаксис операции объединения:

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

SELECT CoiripanyName AS Name, Address, City.PostalCode

FROM Customers

UNION

SELECT [FirstName] & " " & [LastName] AS Name,

Address, City.PostalCode

FROM Employees

ORDER BY Name;

Пересечение

Группа 121

Результатом является новое отношение, в которое входят все кортежи первого отношения, которые есть во втором.

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

Синтаксис операции пересечения:

SELECT DuplicateCustoners1

FROM DuplicateCustomers1

LEFT JOIN DuplicateCustoniers2

ON (DuplicateCustoners1.CustomerID = DuplicateCustomers2.CustomerID)

AND (DuplicateCustomers1.CompanyName = DuplicateCustomers2.CompariyName)

WHERE (((DuplicateCustomers2.CustomerlD) IS NOT NULL));

Разность

Группа 112

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

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

Синтаксис операции вычитания:

SELECT DuplicateCustomers1.*

FROM DuplicateCustomers1

LEFT JOIN DuplicateCustoraers2

ON (DuplicateCiJStomers1.CustomerID = DuplicateCustomers2.CustomerID)

AND (DuplicateCustomers1.CompariyName = DuplicateCustomers2.CompanyName)

MERE (DuplicateCustomers2.CustonierID IS NULL);

Декартово произведение

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

Декартово произведение двух наборов записей представляет собой соединение каждой записи из одного набора записей с каждой записью из другого набора.

Синтаксис операции декартового произведения:

SELECT CustomerName, CSRName FROM Customer, СSRs;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]