Система запросов «Реляционная алгебра

advertisement
Система запросов
«Реляционная алгебра»
Системы запросов
Запрос – операция над одним или несколькими отношениями,
результатом которой является отношение
Система запросов – формальная система для выражения
запросов; образует базисную структуру языков запросов
Язык запросов – специализированный язык
программирования, используемый в СУБД для формулировки
команд
Типы систем запросов
Процедурная система запросов – система, выражение которой
задает набор операций над отношениями и порядок их
выполнения с точностью до определенных законов
ассоциативности (реляционная алгебра)
Логическая система запросов – система, выражение которой
описывает результат, который необходимо получить
(реляционное исчисление)
Система запросов
«Реляционная алгебра»
 Первоначальный набор из 8
операций был предложен Э.
Коддом в 1970-е годы и включал
как операции, которые до сих пор
используются
(проекция,соединение,
деление отношений и т.д.).
Замкнутость реляционной
алгебры
 Реляционная алгебра представляет собой набор
таких операций над отношениями, что результат
каждой из операций также является отношением.
Это свойство алгебры называется замкнутостью.
 Операции над одним отношением
называются унарными, над двумя отношениями —
бинарными, над тремя — тернарными (таковые
практически неизвестны).
 Поскольку реляционная алгебра является
замкнутой, в качестве операндов в реляционные
операции можно подставлять другие выражения
реляционной алгебры (подходящие по типу).
 В реляционных выражениях можно использовать
вложенные выражения сколь угодно сложной
структуры.
Система запросов
«Реляционная алгебра»
Система запросов
«Реляционная алгебра»
Реляционные операторы
1. Бинарные операторы
Необходимое условие – соответствие схем отношений
r(R), s(R) R = {A, B}
Бинарные операторы:
примеры
Реляционные операторы
Реляционные операторы
a
Булевы операции: примеры
dom(A) = {a, c, e, m};
dom(B) = {b, d, f}
Булевы операции: примеры
adom(A, r) = {a, c};
adom(B, r) = {b, d}
Реляционные операторы
2. Унарные операторы
(Выполняются применительно к одному отношению)
A1 ... An
Реляционные операторы
A1 ...
X
... An
Реляционные операторы
A1 ... Ai,…, Ai+k ... An
A1 ... Bj,…, Bj+k ... An
Унарные операторы: примеры
Унарные операторы: примеры
dom(B) = dom(C)
Реляционные операторы
3. Бинарные операторы
(Выполняются применительно к двум отношениям)
Бинарные операторы:
примеры
Бинарные операторы:
примеры
Реляционные операторы
Бинарные операторы:
примеры
Θ-сравнимость атрибутов
A, B – атрибуты, θ ∈ Θ
А θ-сравним с B ↔ знаку сравнения θ сопоставлено
некоторое отношение Х  dom(A)  dom(B)
Реляционные операторы
Бинарные операторы:
примеры
Реляционные операторы
Заключение
• Система запросов «Реляционная алгебра»
• Реляционные операторы
Обещанная ссылка
 http://idstu.irk.ru/ru/content/bd
Download