Книга: Базы данных: конспект лекций
3. Операция разности.
3. Операция разности.
Как уже было сказано ранее, унарная операция разности двух отношений реализуется аналогично операции пересечения. Здесь также, кроме главного запроса с оператором Select, используется второй, вспомогательный запрос – так называемый подзапрос.
Но в отличие от воплощения в жизнь предыдущей операции, при реализации операции разности необходимо использовать другое ключевое слово, а именно not in, что в дословном переводе означает «не в» или (как уместно перевести в нашем рассматриваемом случае) – «не содержится в».
Итак, пусть, как и в предыдущем примере, у нас имеются две схемы отношений (R1 и R2), приблизительно заданные:
R1 (ключ, …) и
R2 (ключ, …);
Как видим, среди атрибутов этих отношений снова заданы ключевые атрибуты.
Таким образом, получаем следующий вид для представления в языке структурированных запросов операции разности:
Select *
From R1
Where ключ not in
(Select ключ From R2);
Таким образом, в результирующее отношение выбираются только те кортежи отношения R1, ключ которых не содержится в списке ключей отношения R2. Если рассматривать запись буквально, то действительно получается, что из отношения R1 «вычли» отношение R2. Отсюда делаем вывод, что условие выборки в этом операторе записано верно (ведь определение разности двух отношений выполняется) и использование ключей, как и в случае реализации операции пересечения, полностью оправдано.
Два случая применения «метода ключей», которые мы рассмотрели, являются самыми распространенными. На этом изучение использования ключей в составлении операторов, представляющих отношения, завершим. Все оставшиеся бинарные операции реляционной алгебры записываются иными способами.
- 1. Операция объединения.
- 2. Операция пересечения.
- 3. Операция разности.
- 4. Операция декартова произведения.
- 5. Операции внутреннего соединения.
- 6. Операция естественного соединения.
- 7. Операция левого внешнего соединения.
- 8. Операция правого внешнего соединения.
- 9. Операция полного внешнего соединения.
- 1. Операции объединения, пересечения, разности
- 1. Операция выборки.
- 1. Операция объединения.
- 2. Операция пересечения.
- 7. Операция левого внешнего соединения.
- 8. Операция правого внешнего соединения.
- 9. Операция полного внешнего соединения.
- Операция косвенной адресации: *
- Операция последовательного вычисления
- II. ОПЕРАЦИЯ КОСВЕННОГО ПОЛУЧЕНИЯ ЭЛЕМЕНТА: ->
- Резюме: операция условия
- Удобная операция объединения строк