Реляционное исчисление — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Отличия от реляционной алгебры)
(Отличия от реляционной алгебры)
Строка 27: Строка 27:
  
 
Запрос в реляционной алгебре состоит из естественного соединения студентов с номерами групп, затем фильтрации по номеру группы и получения идентификаторов студентов:
 
Запрос в реляционной алгебре состоит из естественного соединения студентов с номерами групп, затем фильтрации по номеру группы и получения идентификаторов студентов:
<tex>\pi_{SId}(\sigma_{Name=M34371}(Students \bowtie Groups))</tex>. То есть по шагам описали, что необходимо сделать.
+
<tex>\pi_{SId}(\sigma_{Name=M34371}(Students \bowtie Groups))</tex>. По шагам описали, что необходимо сделать.
 +
 
 +
Соответсвующий запрос в терминах исчисления кортежей:
 +
 +
То есть, не указываем, как конкретно собираемся исполнять запрос, а описали, какие студенты нас интересуют.

Версия 22:13, 19 декабря 2021

В этом разделе будет рассмотрен подход к формированию запросов, основанный на описании данных, которые необходимо получить.

Реляционное исчисление

Определение:
Реляционное исчисление — декларативный язык для работы с отношениями, описывающий какими свойствами должен обладать требуемый результат.

Выделяют две разновидности реляционного исчисления:

  • Исчисление кортежей;
  • Исчисление доменов.

Структура запросов

Запросы в обоих видах исчислений устроены одинаково:

  • Определение переменных;
  • Определение атрибутов результата и свойств, которым они должны удовлетворять.

Синтаксис

Определения переменных
select СписокАтрибутов
from Переменные
where Условие

Отличия от реляционной алгебры

Рассмотрим разницу между реляционной алгеброй и реляционным исчислением на примере: получить идентификаторы студентов, обучающихся в группе M34371.

Запрос в реляционной алгебре состоит из естественного соединения студентов с номерами групп, затем фильтрации по номеру группы и получения идентификаторов студентов: [math]\pi_{SId}(\sigma_{Name=M34371}(Students \bowtie Groups))[/math]. По шагам описали, что необходимо сделать.

Соответсвующий запрос в терминах исчисления кортежей:

То есть, не указываем, как конкретно собираемся исполнять запрос, а описали, какие студенты нас интересуют.