Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Основы проектирования баз данных (Понятие реляционной алгебры)

Содержание:

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

Реляционная алгебра – это система операций над таблицами (отношениями) и их составляющими. Любая операция реляционной алгебры принимает отношение и в результате работы выводит уже новое отношение. Реляционная алгебра работает с множествами и имеет два вида операций над ними:

  1. Традиционные;
  2. Специальные.

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

Группа традиционных операций состоит из:

  1. Объединение;
  2. Пересечение;
  3. Разность;
  4. Декартово произведение.

Операции объединения, пересечения и разности имеют следующие особенности:

  • Отношения должны иметь одинаковое количество атрибутов;
  • Название атрибута результирующего отношения должно быть либо новым, либо наследоваться от исходных отношений.

Объединение

Объединение возвращает отношение, содержащее кортежи, которые принадлежат либо одному из двух заданных отношений, либо обоим. В результате этой операции не происходит никакой потери данных.

Пример выполнения операции объединения:

Отношение 1

ФИО

Зарплата

Иванов Иван Иванович

37000

Аргенья Марина Ивановна

20000

Корнеева Анна Федотовна

42000

Барсова Наталия Афанасиевна

15000

Отношение 2

ФИО

Зарплата

Габулова Мирослава Германовна

60000

Корнеева Анна Федотовна

42000

Мамонова Злата Карповна

13000

Аргенья Марина Ивановна

20000

Помельников Максим Артемиевич

46000

В итоге, операция объединения совместит два отношения в одно новое, содержащее в себе все записи двух исходных:

Итоговое отношение

ФИО

Зарплата

0

Иванов Иван Иванович

37000

1

Аргенья Марина Ивановна

20000

2

Барсова Наталия Афанасиевна

15000

5

Габулова Мирослава Германовна

60000

6

Корнеева Анна Федотовна

42000

7

Мамонова Злата Карповна

13000

8

Помельников Максим Артемиевич

46000

Также операцию объединения можно изобразить следующей схемой:

Пересечение

Операция пересечения возвращает отношение, содержащее в себе записи, содержащиеся в обоих таблицах.

Пример выполнения операции пересечения:

Отношение 1

ФИО

Зарплата

Иванов Иван Иванович

37000

Аргенья Марина Ивановна

20000

Корнеева Анна Федотовна

42000

Барсова Наталия Афанасиевна

15000

Отношение 2

ФИО

Зарплата

Габулова Мирослава Германовна

60000

Корнеева Анна Федотовна

42000

Мамонова Злата Карповна

13000

Аргенья Марина Ивановна

20000

Помельников Максим Артемиевич

46000

Операция пересечения, при работе с этими отношениями выведет новое отношение следующего вида:

Итоговое отношение

ФИО

Зарплата

Корнеева Анна Федотовна

42000

Аргенья Марина Ивановна

20000

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

Операцию пересечения также можно схематично изобразить:

Разность

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

Пример выполнения операции разность:

Отношение 1

ФИО

Зарплата

Иванов Иван Иванович

37000

Аргенья Марина Ивановна

20000

Корнеева Анна Федотовна

42000

Барсова Наталия Афанасиевна

15000

Отношение 2

ФИО

Зарплата

Габулова Мирослава Германовна

60000

Корнеева Анна Федотовна

42000

Мамонова Злата Карповна

13000

Аргенья Марина Ивановна

20000

Помельников Максим Артемиевич

46000

Операция разности вычитает из первого отношения все записи, которые входят во второе:

Итоговое отношение

ФИО

Зарплата

Иванов Иван Иванович

37000

Аргенья Марина Ивановна

20000

Корнеева Анна Федотовна

42000

Барсова Наталия Афанасиевна

15000

Вторая запись в итоге будет исключена из возвращаемого отношения.

Операцию разности можно изобразить так:

Декартово произведение

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

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

Группа специальных операций

  1. Выборка;
  2. Проекция;
  3. Соединение;
  4. Деление.

Выборка

Выборка возвращает отношение, содержащее все записи заданного отношения, которые удовлетворили заданным условиям.

Пример выполнения выборки:

Заданное отношение

ФИО

Зарплата

Габулова Мирослава Германовна

60000

Корнеева Анна Федотовна

42000

Мамонова Злата Карповна

13000

Аргенья Марина Ивановна

20000

Помельников Максим Артемиевич

46000

Сделаем выборку по "Зарплата > 20000", в результате получим следующее отношение:

Итоговое отношение

ФИО

Зарплата

Габулова Мирослава Германовна

60000

Корнеева Анна Федотовна

42000

Помельников Максим Артемиевич

46000

Остались записи, у которых значение атрибута "Зарплата" больше 20000.

Схематичное изображение выборки:

Проекция

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

Пример работы операции проекции:

Исходное отношение

ФИО

Зарплата

Габулова Мирослава Германовна

12000

Корнеева Анна Федотовна

35000

Мамонова Злата Карповна

12000

Аргенья Марина Ивановна

20000

Помельников Максим Артемиевич

12000

Исключим атрибут ФИО, в итоге получится следующее отношение:

Итоговое отношение

Зарплата

12000

35000

20000

Схематическое изображение проекции:

Соединение

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

Пример работы операции соединения:

Отношение 1

Номер

Город

1

Москва

2

Щербинка

3

Подольск

4

Царицыно

5

Бутово

Отношение 2

Номер

Имя

1

Иван

2

Василий

2

Максим

3

Никита

4

Алексей

В итоге, операция соединения выдаст следующее отношение:

Итоговое отношение

Номер

Город

Имя

1

Москва

Иван

2

Щербинка

Василий

2

Щербинка

Максим

3

Подольск

Никита

4

Царицыно

Алексей

Схематическое определение операции соединения:

Деление

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

Пример работы операции деления:

Основное отношение, которое будем делить

Отношение 1

Код

Имя

Код предмета

Название предмета

Количество

1

Игорь

1

Шапка

5

2

Руслан

1

Шапка

6

3

Иван

1

Шапка

10

2

Игорь

2

Куртка

5

Отношение, которым будем делить

Отношение 2

Код предмета

Название предмета

1

Шапка

2

Куртка

Итог работы операции деления:

Итоговое отношение

Код

Имя

Количество

2

Игорь

5

Операцию деления можно изобразить так:

Операция деления не вошла в употребление как традиционные или остальные операции из группы специальных.

Список источников

Список используемой литературы при создании и оформлении реферата:

  • Habr.com;
  • Intuit.ru;
  • Voenmeh.ru;
  • Яндекс картинки;
  • Конспекты лекций.