Реляционная алгебра: предназначение и свойства

Материал из Викиконспекты
Перейти к: навигация, поиск
НЕТ ВОЙНЕ

24 февраля 2022 года российское руководство во главе с Владимиром Путиным развязало агрессивную войну против Украины. В глазах всего мира это военное преступление совершено от лица всей страны, всех россиян.

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

Мы убеждены в абсолютной ценности человеческой жизни, в незыблемости прав и свобод личности. Режим Путина — угроза этим ценностям. Наша задача — обьединить все силы для сопротивления ей.

Эту войну начали не россияне, а обезумевший диктатор. И наш гражданский долг — сделать всё, чтобы её остановить.

Антивоенный комитет России

Распространяйте правду о текущих событиях, оберегайте от пропаганды своих друзей и близких. Изменение общественного восприятия войны - ключ к её завершению.
meduza.io, Популярная политика, Новая газета, zona.media, Майкл Наки.

Запросы. Мотивация

Базы данных подразумевают не только хранение данных, но и запросы, позволяющие эти данные так или иначе получать. Как минимум, запросы нужны для следующих действий:

  • Выборка данных: достаем данные из БД, чтобы их как-то использовать уже извне;
  • Область действия обновлений: часто в запросах обовления (например, UPDATE, DELETE) необходимо указывать область данных, на которые этот запрос распостраняется;
  • Ограничения целостности: до сих пор было только два вида ограничений (ключи и внешние ключи). Использование запросов позволит расширить инструментарий;
  • Ограничения доступа.

Реляционная алгебра

В рамках курса рассматривается несколько подходов к описанию запросов. Один из них — реляционная алгебра.

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


Примеры операций

  • Проекция: [math]\pi_A(R)[/math];
  • Естественное соединение: [math]R_1 \bowtie R_2[/math].

Замечание. Поскольку все операции в алгебре замкнуты по определению, можно комбинировать применения тех или иных операций любым разумным способом. Например: [math]\pi_A(R_1 \bowtie \pi_B(R_2)) \bowtie R_3[/math].

Отношения и операции

Для определения операций будет полезным уточнить, что такое отношение.

Определение:
Отношение — пара из заголовка и тела.


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