Реляционная алгебра. Тема 3.2

Содержание

Слайд 2

УПРАВЛЕНИЕ ДАННЫМИ

ОНЛАЙН КУРС:

ТЕМА 3.2

Основы реляционной алгебры

УПРАВЛЕНИЕ ДАННЫМИ ОНЛАЙН КУРС: ТЕМА 3.2 Основы реляционной алгебры

Слайд 3

Вопрос 1

Введение в реляционную алгебру

Вопрос 1 Введение в реляционную алгебру

Слайд 4

замкнутая система операций над отношениями в реляционной модели данных

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

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

Слайд 5

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

Реляционная
База

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

Слайд 6

В реляционной теории строка в таблице является кортежем
Множество упорядоченных кортежей называется отношением
Столбцы

В реляционной теории строка в таблице является кортежем Множество упорядоченных кортежей называется
в таблице называются доменами

Определения

Слайд 7

Пусть даны N множеств D1,D2, …. Dn (домены), отношением R над этими

Пусть даны N множеств D1,D2, …. Dn (домены), отношением R над этими
множествами называется множество упорядоченных N-кортежей вида , где d1 принадлежит D1 и тд. Множества D1,D2,..Dn называются доменами отношения R

Домены отношений

Слайд 8

Для однозначной идентификации кортежа существует первичный ключ
Первичный ключ - это атрибут

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

Первичный ключ

Слайд 9

данные, которые имеют определенную длину и формат
Наука отличается от теории тем, что

данные, которые имеют определенную длину и формат Наука отличается от теории тем,
она производит новые знания, а теория их обобщает

Пример

Слайд 10

в таблице «Drivers» ключом будет сочетание атрибутов из первого и второго столбца

Примеры

в таблице «Drivers» ключом будет сочетание атрибутов из первого и второго столбца Примеры

Слайд 11

Видно, что в организации может быть несколько водителей, и чтобы однозначно идентифицировать

Видно, что в организации может быть несколько водителей, и чтобы однозначно идентифицировать
водителя необходимо и значение из столбца “Название организации” и из “Имя водителя”

Примеры

Слайд 12

Связь главной и подчиненной таблицы осуществляется через первичный ключ главной таблицы и

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

Внешний ключ

Слайд 13

Вопрос 2

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

Вопрос 2 Операции реляционной алгебры

Слайд 14

Объединение
Пересечение
Вычитание
Декартово произведение
Выборка
Проекция
Соединение
Деление

8 операций реляционной алгебры

Объединение Пересечение Вычитание Декартово произведение Выборка Проекция Соединение Деление 8 операций реляционной алгебры

Слайд 15

Таблица «Products»:

Таблица «Products»:

Слайд 16

Таблица «Sellers»

Таблица «Sellers»

Слайд 17

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

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

Проекция

Слайд 18

Сделаем проекцию на таблице PRODUCTS выбрав из нее ID и PRICE.
Синтаксис операции:
π(ID,

Сделаем проекцию на таблице PRODUCTS выбрав из нее ID и PRICE. Синтаксис
PRICE) PRODUCTS

Примеры

Слайд 19

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

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

Выборка

Слайд 20

Сделаем выборку из таблицы с ценой больше 90.
Синтаксис операции:
π(ID, PRICE) PRODUCTS

Примеры

Сделаем выборку из таблицы с ценой больше 90. Синтаксис операции: π(ID, PRICE) PRODUCTS Примеры

Слайд 21

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

В условии выборки мы можем использовать любое логическое выражение. Сделаем еще одну
выборку с ценой больше 90 и ID товара меньше 300:
σ(PRICE>90 ^ ID<300) PRODUCTS

Примеры

Слайд 22

Из таблицы с продуктами выберем все компании, продающие продуты дешевле 110.
πCOMPANYσ(PRICE<100 )

Из таблицы с продуктами выберем все компании, продающие продуты дешевле 110. πCOMPANYσ(PRICE Примеры
PRODUCTS

Примеры

Слайд 23

Умножение

операции, производимые над двумя отношениями, в результате которых мы получаем отношения со

Умножение операции, производимые над двумя отношениями, в результате которых мы получаем отношения
всеми доменами из двух начальных отношений

Слайд 24

Получим декартово произведения таблиц PRODUCTS и SELLERS.
Синтаксис операции:
PRODUCTS × SELLERS

Примеры

Получим декартово произведения таблиц PRODUCTS и SELLERS. Синтаксис операции: PRODUCTS × SELLERS Примеры

Слайд 25

Представим себе необходимость выбрать продавцов с ценами меньше 90. Без произведения необходимо

Представим себе необходимость выбрать продавцов с ценами меньше 90. Без произведения необходимо
было бы сначала получить ID продуктов из первой таблицы, потом по этим ID из второй таблицы получить нужные имена SELLER, а с использованием произведения будет такой запрос:
π(SELLER) σ(RODUCTS.ID=SELLERS.ID ^ PRICE<90) PRODUCTS × SELLERS

Примеры

Слайд 26

Операция соединения

обратна операции проекции и создает новое отношение из двух уже

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

Слайд 27

Попробуем соединить отношения PRODUCTS и SELLERS и получим отношение

Примеры

Попробуем соединить отношения PRODUCTS и SELLERS и получим отношение Примеры

Слайд 28

Синтаксис операции:
PRODUCTS ⋈ SELLERS

Примеры

Синтаксис операции: PRODUCTS ⋈ SELLERS Примеры

Слайд 29

Пересечение
и вычитание

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

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

Слайд 30

Выводы
Реляционная алгебра похожа на операции над множествами
В реляционной алгебре используются другие понятия,

Выводы Реляционная алгебра похожа на операции над множествами В реляционной алгебре используются
относительно полей БД
Операции реляционной алгебры были предложены Э. Коддом