Изменения

Перейти к: навигация, поиск
Нет описания правки
* Отфильтровать по условию в предваренной нормальной форме;
* Применить кванторы.
 
=== Применение кванторов ===
Рассмотрим подробнее, как применять кванторы.
==== Квантор существования ====
Квантор существования соответсвует проекции. Проецируем, исключая атрибуты, порожденные переменной.
* Если существует хотя бы одно значение кортежной переменной, удовлетворяющее условию, то проекция окажется не пустой.
* Если такого значения не окажется, то проекция окажется пустой.
Получаем в точности поведение квантора существования.
 
==== Квантор всеобщности ====
Квантор всеобщности соответсвует делению. Делим на все столбцы, порожденные переменной.
 
=== Пример преобразования ===
<font color = blue>select</font> G.GId <font color = blue>where $\exists$</font>S (<font color = blue>$\forall$</font>C (<font color = blue>$\exists$</font>P
(G.GId = S.GId <font color = blue>$\land$</font> S.SId = P.SId <font color = blue>$\land$</font>
C.CId = P.CId <font color = blue>$\land$</font> P.Points <font color = blue>$\geq$</font> 60)))
462
правки

Навигация