Связь алгебры и исчисления — различия между версиями
Sashapff (обсуждение | вклад) (→Естественное соединение R_1 \bowtie R_2) |
Sashapff (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
== Алгебра через исчисление == | == Алгебра через исчисление == | ||
+ | Выразим операции реляционной алгебры через операции реляционного исчисления. | ||
=== Проекция <tex>\pi_{A_1,\ldots,A_n}(R)</tex> === | === Проекция <tex>\pi_{A_1,\ldots,A_n}(R)</tex> === | ||
<font color = blue>select</font> A1<font color = gray>$,\ldots,$</font>An <font color = blue>from</font> R | <font color = blue>select</font> A1<font color = gray>$,\ldots,$</font>An <font color = blue>from</font> R | ||
Строка 21: | Строка 22: | ||
R1<font color = grey>.*,</font> R2<font color = grey>.*</font> <font color = blue>from</font> R1<font color = grey>,</font> R2 <font color = blue>where</font> | R1<font color = grey>.*,</font> R2<font color = grey>.*</font> <font color = blue>from</font> R1<font color = grey>,</font> R2 <font color = blue>where</font> | ||
R1<font color = grey>.</font><font color = red>Атрибуты</font> <font color = grey>=</font> R2<font color = grey>.</font><font color = red>Атрибуты</font> | R1<font color = grey>.</font><font color = red>Атрибуты</font> <font color = grey>=</font> R2<font color = grey>.</font><font color = red>Атрибуты</font> | ||
+ | |||
+ | Набор перечисленных операций составляет базис операций реляционной алгебры. Все операции этого набора можно эмулировать в терминах реляционного исчисления. Из этого следует, что выразительна мощность реляционного исчисления не меньше выразительной мощности реляционной алгебры. |
Версия 02:08, 20 декабря 2021
Содержание
- 1 Алгебра через исчисление
- 1.1 Проекция [math]\pi_{A_1,\ldots,A_n}(R)[/math]
- 1.2 Фильтр [math]\sigma_\theta(R)[/math]
- 1.3 Дополнительный столбец [math]\varepsilon_{A=expr}(R)[/math]
- 1.4 Объединение [math]R_1 \cup R_2[/math]
- 1.5 Разность [math]R1 \smallsetminus R2[/math]
- 1.6 Декартово произведение [math]R_1 \times R_2[/math]
- 1.7 Естественное соединение [math]R_1 \bowtie R_2[/math]
Алгебра через исчисление
Выразим операции реляционной алгебры через операции реляционного исчисления.
Проекция
select A1$,\ldots,$An from R
Фильтр
from R where $\theta$
Дополнительный столбец
select R.*, expr as A from R
Объединение
R :: R1, R2
Разность
R :: R1 where $\lnot\exists$R2 (R1 = R2)
Декартово произведение
R1.*, R2.* from R1, R2
Естественное соединение
R1.*, R2.* from R1, R2 where R1.Атрибуты = R2.Атрибуты
Набор перечисленных операций составляет базис операций реляционной алгебры. Все операции этого набора можно эмулировать в терминах реляционного исчисления. Из этого следует, что выразительна мощность реляционного исчисления не меньше выразительной мощности реляционной алгебры.