Изменения
→Cравнение атрибутов с применением формул
== Переменные-кортежи ==
=== Синтаксис ===
Для каждой переменной берем ее значение из тела соответствующего отношения:
<font color = red>Переменная <font color = grey>::</font> Отношение</font>
=== Примеры ===
Мжно задать переменная S, которая пробегает по всем студентам, и переменную G, которая пробегает по всем группам:
S <font color = grey>::</font> Students
G <font color = grey>::</font> Groups
Можно записать группы четвертого курса, то есть группы, которые имеют название M34351, M34371 или M34391:
G4 <font color = grey>::</font> Groups <font color = blue>where</font>
Name <font color = grey>=</font> <font color = green>'M34351'</font> <font color = blue>∨</font>
== Операции с отношениями ==
=== Ограничение ===
Можно ограничить отношение, выбрав те кортежи, которые удовлетворяют требуемым условиям.Это делается с помощью ключевого слова where:
<font color = red>Отношения</font> <font color = blue>where</font> <font color = red>Условие</font>
=== Объединение ===
Для объединения используется синтаксис перечисления необходимых объединяемых отношений через запятую.:
<font color = red>Отношение1<font color = grey>,</font> Отношение2</font>
=== Примеры ===
Рассмотрим примеры. Можно задать отношение {{---}} группы, имеющие название M34371:
Groups <font color = blue>where</font> Name <font color = grey>=</font> <font color = green>'M34371'</font>
Помимо способа, предложенного в предыдущей секции, можно задать группы 4 курса по-другому. Это такие группы, у которых название M34351, еще такие группы, у которых название M34371, и такие группы, у которых название M34391.
G4 <font color = grey>::</font> Groups <font color = blue>where</font> Name <font color = grey>=</font> <font color = green>'M34351'</font><font color = grey>,</font>
Groups <font color = blue>where</font> Name <font color = grey>=</font> <font color = green>'M34371'</font><font color = grey>,</font>
== Условия ==
Разделяют три вида условий: простые, составные и условия с кванторами.
=== Простые условия ===
S<font color = grey>.</font>Name <font color = grey>=</font> <font color = green>'Иван'</font>
Или выделить студентов с идентификатором меньше 5:
S<font color = grey>.</font>Id <font color = grey><</font> <font color = #056967>5</font>
S<font color = grey>.</font>Id <font color = blue>$\geq$</font> G<font color = grey>.</font>Id
length<font color = grey>(</font>S<font color = grey>.</font>FirstName<font color = grey>)</font> <font color = grey>=</font> length<font color = grey>(</font>S<font color = grey>.</font>LastName<font color = grey>)</font> <font color = grey>+</font> <font color = #056967>3</font>
=== Составные условия ===