Изменения

Перейти к: навигация, поиск

Исчисление кортежей

363 байта добавлено, 19:34, 4 сентября 2022
м
rollbackEdits.php mass rollback
== Переменные-кортежи ==
В исчислении кортежей переменные являются кортежами. У каждой переменной-кортежа есть тип . Тип состоит из набора атрибутов и набора значений. Для каждого атрибута указан его домен {{---}} набор атрибутов, для каждого из которых есть домен, а так же набор значенийимя и тип. Такая комбинация из имен и типов атрибутов и набора значений в данной модели называется отношением. Из этого следует, что каждая кортежная переменная пробегает некоторое отношение.
=== Синтаксис ===
Для каждой переменной берем ее значение из тела соответствующего отношения. На языке исчисления кортежей объявление переменной записываем таким образом:
<font color = red>Переменная <font color = grey>::</font> Отношение</font>
=== Примеры ===
Мжно Можно задать переменная переменную S, которая пробегает по всем студентам, и переменную G, которая пробегает по всем группам:
S <font color = grey>::</font> Students
G <font color = grey>::</font> Groups
Видим, что запрос получился довольно лаконичным, в то время как в [[Реляционная алгебра|реляционной алгебре]] для такого же запроса потребовалось бы целых 2 больших деления.
Второй особенностью [[Реляционное исчисление|реляционного исчисления]] является то, что можно выбирать сразу из нескольких отношений, просто перечислив их в секции from через запятую. Мотивация состоит в том, что в секции select можно указывать только атрибуты тех отношений, из которых выбираем. В следующем данном примере хотим указать и имя студента, и название его группы, поэтому нужно выбрать и студентов, и группы, так как в противном случае будет неоткуда достать соответсвующий кусочек информации. В таком случае еще необходимо добавить условие, что номер рассматриваемой группы и номер группы студента совпадают.:
<font color = blue>select</font> S<font color = grey>.</font>FirstName<font color = grey>,</font> S<font color = grey>.</font>LastName<font color = grey>,</font> G<font color = grey>.</font>Name
<font color = blue>from</font> S<font color = grey>,</font> G
<font color = blue>where</font> S<font color = grey>.</font>GId <font color = grey>=</font> G<font color = grey>.</font>GId
1632
правки

Навигация