Реляционное исчисление
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: электронный реферат, виды понятий реферат
| Добавил(а) на сайт: Бородин.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 | Следующая страница реферата
Связанная переменная x в этой формуле WFF является своего рода
фиктивной переменной. Она служит лишь для связи внутренних параметров
выражения с внешним квантором. В формуле WFF просто утверждается, что
существует целое число (скажем, x), которое больше 3. Следовательно, значение этой формулы WFF осталось бы полностью неизменным, если бы все
экземпляры x были заменены экземплярами некоторой другой переменной
(скажем, y). Другими словами, формула WFF EXISTS y (y>3) семантически
идентична формуле, приведённой ранее.
Теперь рассмотрим другую формулу WFF.
EXISTS x (x>3) AND x3) AND x3) AND y Определить имена поставщиков детали с номером ‘P2’
SX
WHERE EXISTS SPX (SPX.S# = SX.S# AND
SPX.P# = P# (‘P2’) )
Обратите внимание на использование имени переменной кортежа в прототипе кортежа. Этот пример является сокращённой записью следующего выражения.
(SX.S#, SX.NAME, SX.STATUS, SX.CITY)
WHERE EXISTS SPX (SPX.S# = SX.S# AND
SPX.P# = P# (‘P2’) )
Этот же пример решённый средствами реляционной алгебры выглядит так
( (SP JOIN S) WHERE P# =’P2’) {SNAME}
> Определить имена поставщиков по крайней мере одной красной детали
SX.SNAME
WHERE EXISTS SPX (SX.S# = SPX.S# AND
EXISTS PX (PX.P# = SPX.P# AND
PX.COLOR =
COLOR (‘Red’) ) )
Этот же пример решённый средствами реляционной алгебры выглядит так
( ( ( P WHERE COLOR = COLOR (‘Red’) )
JOIN SP) {S#} JOIN S) {SNAME}
3. Сравнительный анализ реляционного исчисления и реляционной алгебры.
В начале утверждалось, что реляционная алгебра и реляционное исчисление в своей основе эквивалентны. Осудим это утверждение более подробно. Вначале Кодд показал, что алгебра по крайней мере мощнее исчисления. Он сделал это, придумав алгоритм, называемый алгоритмом редукции Кодда, с помощью которого любое выражение исчисления можно преобразовать в семантически эквивалентное выражение алгебры. Мы не станем приводить здесь этот алгоритм полностью, а ограничимся довольно сложным примером, иллюстрирующим в общих чертах, как он функционирует.
|S# |SNAME |STATUS |CITY |
|S1 |Smith |20 |London |
|S2 |Jones |10 |Paris |
|S3 |Black |30 |Paris |
|S4 |Clark |20 |London |
|S5 |Adams |30 |Athens |
|S#|P# |J#|QTY |
|S1|P1 |J1|200 |
|S1|P1 |J4|700 |
|S2|P3 |J1|400 |
|S2|P3 |J2|200 |
|S2|P3 |J3|200 |
|S2|P3 |J4|500 |
|S2|P3 |J5|600 |
|S2|P3 |J6|400 |
|S2|P3 |J7|800 |
|S2|P5 |J2|100 |
|S3|P3 |J1|200 |
|S3|P4 |J2|500 |
|S4|P6 |J3|300 |
|S4|P6 |J7|300 |
|S5|P2 |J2|200 |
|S5|P2 |J4|100 |
|S5|P5 |J5|500 |
|S5|P5 |J7|100 |
|S5|P6 |J2|200 |
|S5|P1 |J4|100 |
|S5|P3 |J4|200 |
|S5|P4 |J4|800 |
|S5|P5 |J4|400 |
|S5|P6 |J4|500 |
|P#|PNAME |COLOR |WEIGHT |CITY |
|P1|Nut |Red |12.0 |London|
|P2|Bolt |Green |17.0 |Paris |
|P3|Screw |Blue |17.0 |Rome |
|P4|Screw |Red |14.0 |London|
|P5|Cam |Blue |12.0 |Paris |
|P6|Cog |Red |19.0 |London|
|J#|JNAME |CITY |
|J1|Sorter|Paris |
|J2|Displa|Rome |
| |y | |
|J3|OCR |Athens|
|J4|Consol|Athens|
| |e | |
|J5|RAID |London|
|J6|EDS |Oslo |
|J7|Tape |London|
S-детали, P- поставщики, J- проекты, SPJ- поставки.
Рассмотрим теперь следующий запрос: «Получить имена поставщиков и названия городов, в которых находятся поставщики деталей по крайней мере для одного проекта в Афинах, поставляющих по крайней мере 50 штук каждой детали». Выражение реляционного исчисления для этого запроса следующее.
(SX.SNAME, SX.CITY) WHERE EXISTS JX FORALL PX EXISTS SPJX
( JX.CITY = ‘Athens’ AND
JX.J# = SPJX.J# AND
PX.P# = SPJX.P# AND
SX.S# = SPJX.S# AND
SPJX.QTY ? QTY (50) )
Здесь SX, PX, JX и SPJX - переменные кортежей, получающие свои значения из отношений S, P, J и SPJ соответственно. Теперь покажем, как можно вычислить это выражение, чтобы достичь требуемого результата.
Этап 1. Для каждой переменной кортежа выбираем её область значений
(т.е. набор всех значений для переменной), если это возможно. Выражение
«выбираем, если возможно» подразумевает, что существует условие выборки, встроенное в фразу WHERE, которую можно использовать, чтобы сразу исключить
из рассмотрения некоторые кортежи. В нашем случае выбираются следующие
наборы кортежей.
SX : Все кортежи отношения S
Рекомендуем скачать другие рефераты по теме: реферат традиции, реферат газ.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 | Следующая страница реферата