SlideShare a Scribd company logo
1 of 53
Основные операции
реляционной
алгебры
•Понятия
•Операции
•Примеры
1
Реляционная база данных - это
набор отношений, организованных
в виде связанных таблиц.
N-арным отношением R называют
подмножество декартова произведения
D1x D2 x …x Dn множеств. Исходные
множества D1, D2 , …, Dn - называют в
модели доменами.
2
Первоначальные множества объектов –
домены:
•D1 – {Иванов, Крылов, Степанов}
•D2 - {История, Химия}
• D3 – { 3, 4, 5}
Тогда декартово произведение содержит
набор из 18 троек-объектов, где первый
элемент – одна из фамилий, второй –
название дисциплины, а третий – одна из
оценок.
3
<Иванов, История, 3> <Иванов, История, 4>
<Иванов, История, 5> <Иванов, Химия, 3>
<Иванов, Химия, 4> <Иванов, Химия, 5>
< Крылов, История, 3> < Крылов, История, 4>
< Крылов, История, 5> < Крылов, Химия, 3>
< Крылов, Химия, 4> < Крылов, Химия, 5>
< Степанов, История, 3> < Степанов, История, 4>
< Степанов, История, 5> < Степанов, Химия, 3>
< Степанов, Химия, 4> < Степанов, Химия, 5>
4
Отношение R моделирует реальную ситуацию и оно
может содержать, допустим только 5 строк, которые
соответствуют результатам сессии (Крылов экзамен
по химии еще не сдавал ). Отношение имеет простую
графическую интерпретацию - представленную в
виде таблицы: R
Фамилия Дисциплина Оценка
Иванов История 4
Иванов Химия 3
Крылов История 5
Степанов История 5
Степанов Химия 4
5
Данная таблица обладает рядом
специфических свойств:
1.В таблице нет одинаковых строк.
2.Таблица имеет столбцы,
соответствующие атрибутам отношения.
3.Каждый атрибут в отношении имеет
уникальное имя.
4.Порядок строк в таблице произвольный.
6
Вхождение домена в отношение принято
называть атрибутом. Строки отношения –
кортежами.
Основными понятиями
реляционных баз данных
являются тип данных, домен,
атрибут, кортеж, первичный ключ
и отношение.
7
8
Число атрибутов – степень отношения.
Координальное число – число строк с
неповторимыми значениями.
• пропуск, имя, зарплата, номер отдела –
степень отношения = 4
•5 кортежей
•310, 313, 315 – домен номеров отделов,
3 координальное число данного домена
•5 координальное число домена пропусков
•4 координальное число зарплаты
9
Реляционная алгебра —
формальная система
манипулирования отношениями в
реляционной модели данных.
Манипулирования (действия) над
отношениями называются операторами.
Операторы делятся на основные и
дополнительные.
10
Объединение - выполняется над двумя
отношениями R U S. В результате получается
новое отношение конкатенации
(комбинации) кортежей из R с кортежами
в S.
I + J – максимальное число кортежей (без
дублирования).
Отношения R и S должны быть совместимы,
т.е. иметь одинаковую структуру.
11
R1 + R2 = R3 (union)
Получаем отношения, кортежи которого
принадлежат либо первому, либо второму,
либо обоим исходным отношениям.
12
R1  R2 = R3
R1
Код Имя Город Рейтинг
1 Сергей Москва 20
2 Петр Киев 30
R2
Код Имя Город Рейтинг
5 Борис Киев 25
1 Сергей Москва 20
6 Василий Рязань 40 13
R3 = R1 + R2 = R2 + R1
Код Имя Город Рейтинг
1 Сергей Москва 20
2 Петр Киев 30
5 Борис Киев 25
6 Василий Рязань 40
14
R1
Шифр
детали
Название
детали
00011073 Гайка М1
00011075 Гайка М2
00011076 Гайка М3
00011003 Болт М1
00011006 Болт М3
00013063 Шайба М1
00013066 Шайба М3
R2
Шифр
детали
Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011077 Гайка М4
00011004 Болт М2
00011006 Болт М3
15
16
R3 = R1 + R2
Шифр
детали
Название
детали
00011073 Гайка М1
00011075 Гайка М2
00011076 Гайка М3
00011003 Болт М1
00011006 Болт М3
00013063 Шайба М1
00013066 Шайба М3
00011077 Гайка М4
00011004 Болт М2
17
Пересечение - отношение, которое
содержит множество кортежей,
принадлежащих одновременно
первому и второму отношениям.
R1  R2 = R3
R1 inter section R2 = R3
R1
Код Имя Город Рейтинг
1 Сергей Москва 20
2 Петр Киев 30
R2
Код Имя Город Рейтинг
5 Борис Киев 25
1 Сергей Москва 20
6 Василий Рязань 40 18
R3 = R1  R2 = R2  R1
Код Имя Город Рейтинг
1 Сергей Москва 20
19
R1
Шифр
детали
Название
детали
00011073 Гайка М1
00011075 Гайка М2
00011076 Гайка М3
00011003 Болт М1
00011006 Болт М3
00013063 Шайба М1
00013066 Шайба М3
R2
Шифр
детали
Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011077 Гайка М4
00011004 Болт М2
00011006 Болт М3
20
21
R3 = R1  R2
Шифр детали Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011006 Болт М3
Перечень деталей с двух участков
22
Разность - отношение, которое
содержит множество кортежей,
принадлежащих первому отношению,
но отсутствующих во втором
отношении.
R1  R2 = R3
R1 minus R2 = R3
R1 - R2 = R3
R1
Код Имя Город Рейтинг
1 Сергей Москва 20
2 Петр Киев 30
R2
Код Имя Город Рейтинг
5 Борис Киев 25
1 Сергей Москва 20
6 Василий Рязань 40 23
R3 = R1 - R2
Код Имя Город Рейтинг
2 Петр Киев 30
24
R3 = R2 - R1
Код Имя Город Рейтинг
5 Борис Киев 25
6 Василий Рязань 40
R1
Шифр
детали
Название
детали
00011073 Гайка М1
00011075 Гайка М2
00011076 Гайка М3
00011003 Болт М1
00011006 Болт М3
00013063 Шайба М1
00013066 Шайба М3
R2
Шифр
детали
Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011077 Гайка М4
00011004 Болт М2
00011006 Болт М3
25
26
R3 = R1 - R2
Шифр
детали
Название
детали
00011075 Гайка М2
00011003 Болт М1
00013063 Шайба М1
00013066 Шайба М3
R3 = R2 - R1
Шифр
детали
Название
детали
00011077 Гайка М4
00011004 Болт М2
27
Проекция - определяет новое
отношение, которое содержит
вертикальное подмножество исходного
отношения, которое создается
извлечением значений указанных
атрибутов, используя строки дубликаты.
R1 projection
Выделяем столбцы
R1
Код Имя Город Рейтинг
1 Сергей Москва 20
2 Петр Киев 30
R1 projection (код, имя)
Код Имя
5 Борис
1 Сергей
6 Василий
28
R2
Шифр
детали
Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011077 Гайка М4
00011004 Болт М2
00011006 Болт М3
29
R2
Название
детали
Гайка М1
Гайка М3
Гайка М4
Болт М2
Болт М3
30
Выборка - отношение полученное из
кортежей одного отношения
удовлетворяющие условию.
Section
Where условие
R
Код Имя Город Рейтинг
5 Борис Киев 25
1 Сергей Москва 20
6 Василий Киев 40
31
Rs Selection Where Город =‘Киев’
Код Имя Город Рейтинг
5 Борис Киев 25
6 Василий Киев 40
R
Шифр
детали
Название
детали
00011073 Гайка М1
00011075 Гайка М2
00011076 Гайка М3
00011003 Болт М1
00011006 Болт М3
00013063 Шайба М1
00013066 Шайба М3
Rs
Шифр
детали
Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011077 Гайка М4
32
Rs Selection Where
Название детали = Г *
33
Произведение отношений -
Пусть отношение «А» имеет Х
кортежей, а отношение «B» имеет Y
кортежей. Произведение двух
отношений «А» и «B» является
отношение «С», количество кортежей
которого равно Х * Y и состоящего из
попарного соединения всех строк
одного отношения со всеми строками
другого отношения.
34
Число атрибутов произведения равно
сумме атрибутов А и B.
C = A product B
C = A * B
A
Код Имя Дисциплина Специальность
123 Сергей История СЗ
158 Петр Математика АС
B
Код Код_дисциплины № п/п
123 И350 1
158 ВА490 2
35
36
C = A * B
Код Имя Дисциплина Специальность Код_
дисциплины
№
п/п
123 Сергей История СЗ И350 1
123 Сергей История СЗ ВА490 2
158 Петр Математика АС И350 1
158 Петр Математика АС ВА490 2
// при произведении должны быть связи
А – номенклатура деталей
Шифр детали Название
детали
00011073 Гайка М1
00011076 Гайка М3
00011077 Гайка М4
00011004 Болт М2
00011006 Болт М3
37
B – цеха
Цех
Цех №1
Цех №2
С = А * B
Шифр
детали
Название
детали
Цех
00011073 Гайка М1 Цех №1
00011076 Гайка М3 Цех №1
00011077 Гайка М4 Цех №1
00011004 Болт М2 Цех №1
00011006 Болт М3 Цех №1
00011073 Гайка М1 Цех №2
00011076 Гайка М3 Цех №2
00011077 Гайка М4 Цех №2
00011004 Болт М2 Цех №2
00011006 Болт М3 Цех №2 38
Каждый цех
изготовляет
все детали
39
Деление отношений div -
Пусть отношение «А» имеет несколько атрибутов,
а отношение «B» имеет 1 атрибут, или отношения
«А» и «B» имеют общий атрибут. Тогда делением
«A» и «B» является отношение «С» с атрибутом из
«А» и множеством картежей таких, что
1) они включают в себя множество значений
общего атрибута;
2) Эти значения соответствуют значениям общего
атрибута и «А»
// иначе говоря результат «С» - такие значения из
«А», для которых соответствует значение из «В».
40
«А»
S P
S1 P1
S1 P2
S1 P3
S1 P4
S1 P5
S1 P6
S2 P1
S2 P2
S3 P2
S4 P2
S4 P4
S4 P5
«B»
P
P1
C= A div B
S
S1
S2
41
«А»
S P
S1 P1
S1 P2
S1 P3
S1 P4
S1 P5
S1 P6
S2 P1
S2 P2
S3 P2
S4 P2
S4 P4
S4 P5
«B»
P
P1
P2
P3
P4
P5
P6
C= A div B
S
S1
42
«А»
S P
S1 P1
S1 P2
S1 P3
S1 P4
S1 P5
S1 P6
S2 P1
S2 P2
S3 P2
S4 P2
S4 P4
S4 P5
«B»
P
P2
P4
C= A div B
S
S1
S4
43
Соединение Join - данная
операция представляет
комбинацию нескольких
операторов.
Различают естественное соединение
/эквивалентность/ внешнее
соединение, левое, правое
соединение таблиц образованных
при связях.
44
Алгоритм соединения:
1) Формируется произведение двух
таблиц;
2) Делается операция выборки по
условию с соединением;
3) Операция проектирования для
исключения дублирующих
атрибутов
A
№ Имя Дисциплина Специальность
123 Сергей История СЗ
158 Петр Математика АС
105 Марья Менеджмент СЧ
B
№ ауд Код_дисциплины № п/п
123 И350 1
105 ВА490 3
123 ВА490 7
45
46
A product B
№ Имя Дисц-на Спец. № ауд Код_дис № п/п
123 Сергей История СЗ 123 И350 1
123 Сергей История СЗ 105 ВА490 3
123 Сергей История СЗ 123 ВА490 7
158 Петр Математика АС 123 И350 1
158 Петр Математика АС 105 ВА490 3
158 Петр Математика АС 123 ВА490 7
105 Марья Менеджмент СЧ 123 И350 1
105 Марья Менеджмент СЧ 105 ВА490 3
105 Марья Менеджмент СЧ 123 ВА490 7
47
Выборка selection №
№ Имя Дисц-на Спец. № ауд Код_дис № п/п
123 Сергей История СЗ 123 И350 1
123 Сергей История СЗ 123 ВА490 7
105 Марья Менеджмент СЧ 105 ВА490 3
А Join B (соединение)
№ Имя Дисц-на Спец. Код_дис № п/п
123 Сергей История СЗ И350 1
123 Сергей История СЗ ВА490 7
105 Марья Менеджмент СЧ ВА490 3
К дополнительным
операторам относятся:
расширение, подведение
итогов, операции работы с
таблицами.
48
49
Расширение - данная операция
состоит в том, что отношение
дополняется новым
вычисляемым атрибутом, в
котором данные значения
берутся для вычисления из
старых атрибутов.
A
№ Товар Цена Количество
1 Кефир 25,00 р. 4
2 Творог 42,00 р. 6
3 Киви 10,00 р. 12
50
B - Расширение
№ Товар Цена Количество Сумма:
[Цена]*[Количество]
1 Кефир 25,00 р. 4 100,00 р.
2 Творог 42,00 р. 6 232,00 р.
3 Киви 10,00 р. 12 120,00 р.
51
Подведение итогов - все операции
подведения итогов по таблице.
Нахождение:
Min - минимум
Max - максимум
Sum - сумма
Count – количество
Avg – среднее арифметическое
52
Операции с таблицами -
действия с таблицами:
Создание таблицы
Удаление
Переименование
Обновление
Эти операции лежат в основе языка
описания данных – группа DDL (Data
Definition Language)
53
На основе реляционной алгебры был создан
язык программных запросов:
 QBE – запрос по образцу (используется
бланк, в котором заносятся имена атрибутов и
условие запроса)
SQL – Structured Query Language -
структурированный язык запросов

More Related Content

Viewers also liked

Sci Fi Writing Sample 2016 red
Sci Fi Writing Sample 2016 redSci Fi Writing Sample 2016 red
Sci Fi Writing Sample 2016 redJoseph Cabadas
 
2_Введение_основные_понятия
2_Введение_основные_понятия2_Введение_основные_понятия
2_Введение_основные_понятияEvgeniy Golendyhin
 
16 взаимосвязи таблиц
16 взаимосвязи таблиц16 взаимосвязи таблиц
16 взаимосвязи таблицEvgeniy Golendyhin
 
3_БД_Основные понятия
3_БД_Основные понятия3_БД_Основные понятия
3_БД_Основные понятияEvgeniy Golendyhin
 
17 18 макрокоманды access
17 18 макрокоманды access17 18 макрокоманды access
17 18 макрокоманды accessEvgeniy Golendyhin
 
DAC News Lingenfelter Dec 2015
DAC News Lingenfelter Dec 2015DAC News Lingenfelter Dec 2015
DAC News Lingenfelter Dec 2015Joseph Cabadas
 
Artikel penyakit stroke
Artikel penyakit strokeArtikel penyakit stroke
Artikel penyakit strokeBasri Baslam
 
Auto accident attorney minnesota
Auto accident attorney minnesotaAuto accident attorney minnesota
Auto accident attorney minnesotaKnowyourright
 

Viewers also liked (12)

Sci Fi Writing Sample 2016 red
Sci Fi Writing Sample 2016 redSci Fi Writing Sample 2016 red
Sci Fi Writing Sample 2016 red
 
Mustang Turns 50
Mustang Turns 50Mustang Turns 50
Mustang Turns 50
 
2_Введение_основные_понятия
2_Введение_основные_понятия2_Введение_основные_понятия
2_Введение_основные_понятия
 
16 взаимосвязи таблиц
16 взаимосвязи таблиц16 взаимосвязи таблиц
16 взаимосвязи таблиц
 
Kellogg book
Kellogg bookKellogg book
Kellogg book
 
10 субд
10 субд10 субд
10 субд
 
3_БД_Основные понятия
3_БД_Основные понятия3_БД_Основные понятия
3_БД_Основные понятия
 
17 18 макрокоманды access
17 18 макрокоманды access17 18 макрокоманды access
17 18 макрокоманды access
 
DAC News Lingenfelter Dec 2015
DAC News Lingenfelter Dec 2015DAC News Lingenfelter Dec 2015
DAC News Lingenfelter Dec 2015
 
Artikel penyakit stroke
Artikel penyakit strokeArtikel penyakit stroke
Artikel penyakit stroke
 
the greatest
the greatestthe greatest
the greatest
 
Auto accident attorney minnesota
Auto accident attorney minnesotaAuto accident attorney minnesota
Auto accident attorney minnesota
 

More from Evgeniy Golendyhin

22 23 выводы _отчеты
22 23  выводы _отчеты22 23  выводы _отчеты
22 23 выводы _отчетыEvgeniy Golendyhin
 
21 элементы управление
21  элементы управление21  элементы управление
21 элементы управлениеEvgeniy Golendyhin
 
20 объект. экранная форма
20  объект. экранная форма20  объект. экранная форма
20 объект. экранная формаEvgeniy Golendyhin
 
13 14 15_индексирование
13 14 15_индексирование13 14 15_индексирование
13 14 15_индексированиеEvgeniy Golendyhin
 
11 ms acces_приемы работыt
11 ms acces_приемы работыt11 ms acces_приемы работыt
11 ms acces_приемы работыtEvgeniy Golendyhin
 
8 9 этапы проектированиябд
8 9 этапы проектированиябд8 9 этапы проектированиябд
8 9 этапы проектированиябдEvgeniy Golendyhin
 
4_Основные понятия и типы модели
4_Основные понятия и типы модели4_Основные понятия и типы модели
4_Основные понятия и типы моделиEvgeniy Golendyhin
 

More from Evgeniy Golendyhin (10)

24 25 запросы
24 25 запросы24 25 запросы
24 25 запросы
 
22 23 выводы _отчеты
22 23  выводы _отчеты22 23  выводы _отчеты
22 23 выводы _отчеты
 
21 элементы управление
21  элементы управление21  элементы управление
21 элементы управление
 
20 объект. экранная форма
20  объект. экранная форма20  объект. экранная форма
20 объект. экранная форма
 
13 14 15_индексирование
13 14 15_индексирование13 14 15_индексирование
13 14 15_индексирование
 
12 ms access
12 ms access12 ms access
12 ms access
 
11 ms acces_приемы работыt
11 ms acces_приемы работыt11 ms acces_приемы работыt
11 ms acces_приемы работыt
 
8 9 этапы проектированиябд
8 9 этапы проектированиябд8 9 этапы проектированиябд
8 9 этапы проектированиябд
 
4_Основные понятия и типы модели
4_Основные понятия и типы модели4_Основные понятия и типы модели
4_Основные понятия и типы модели
 
1 Введение
1 Введение1 Введение
1 Введение
 

7 основные операции реляции

  • 2. Реляционная база данных - это набор отношений, организованных в виде связанных таблиц. N-арным отношением R называют подмножество декартова произведения D1x D2 x …x Dn множеств. Исходные множества D1, D2 , …, Dn - называют в модели доменами. 2
  • 3. Первоначальные множества объектов – домены: •D1 – {Иванов, Крылов, Степанов} •D2 - {История, Химия} • D3 – { 3, 4, 5} Тогда декартово произведение содержит набор из 18 троек-объектов, где первый элемент – одна из фамилий, второй – название дисциплины, а третий – одна из оценок. 3
  • 4. <Иванов, История, 3> <Иванов, История, 4> <Иванов, История, 5> <Иванов, Химия, 3> <Иванов, Химия, 4> <Иванов, Химия, 5> < Крылов, История, 3> < Крылов, История, 4> < Крылов, История, 5> < Крылов, Химия, 3> < Крылов, Химия, 4> < Крылов, Химия, 5> < Степанов, История, 3> < Степанов, История, 4> < Степанов, История, 5> < Степанов, Химия, 3> < Степанов, Химия, 4> < Степанов, Химия, 5> 4
  • 5. Отношение R моделирует реальную ситуацию и оно может содержать, допустим только 5 строк, которые соответствуют результатам сессии (Крылов экзамен по химии еще не сдавал ). Отношение имеет простую графическую интерпретацию - представленную в виде таблицы: R Фамилия Дисциплина Оценка Иванов История 4 Иванов Химия 3 Крылов История 5 Степанов История 5 Степанов Химия 4 5
  • 6. Данная таблица обладает рядом специфических свойств: 1.В таблице нет одинаковых строк. 2.Таблица имеет столбцы, соответствующие атрибутам отношения. 3.Каждый атрибут в отношении имеет уникальное имя. 4.Порядок строк в таблице произвольный. 6
  • 7. Вхождение домена в отношение принято называть атрибутом. Строки отношения – кортежами. Основными понятиями реляционных баз данных являются тип данных, домен, атрибут, кортеж, первичный ключ и отношение. 7
  • 8. 8
  • 9. Число атрибутов – степень отношения. Координальное число – число строк с неповторимыми значениями. • пропуск, имя, зарплата, номер отдела – степень отношения = 4 •5 кортежей •310, 313, 315 – домен номеров отделов, 3 координальное число данного домена •5 координальное число домена пропусков •4 координальное число зарплаты 9
  • 10. Реляционная алгебра — формальная система манипулирования отношениями в реляционной модели данных. Манипулирования (действия) над отношениями называются операторами. Операторы делятся на основные и дополнительные. 10
  • 11. Объединение - выполняется над двумя отношениями R U S. В результате получается новое отношение конкатенации (комбинации) кортежей из R с кортежами в S. I + J – максимальное число кортежей (без дублирования). Отношения R и S должны быть совместимы, т.е. иметь одинаковую структуру. 11
  • 12. R1 + R2 = R3 (union) Получаем отношения, кортежи которого принадлежат либо первому, либо второму, либо обоим исходным отношениям. 12 R1  R2 = R3
  • 13. R1 Код Имя Город Рейтинг 1 Сергей Москва 20 2 Петр Киев 30 R2 Код Имя Город Рейтинг 5 Борис Киев 25 1 Сергей Москва 20 6 Василий Рязань 40 13
  • 14. R3 = R1 + R2 = R2 + R1 Код Имя Город Рейтинг 1 Сергей Москва 20 2 Петр Киев 30 5 Борис Киев 25 6 Василий Рязань 40 14
  • 15. R1 Шифр детали Название детали 00011073 Гайка М1 00011075 Гайка М2 00011076 Гайка М3 00011003 Болт М1 00011006 Болт М3 00013063 Шайба М1 00013066 Шайба М3 R2 Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011077 Гайка М4 00011004 Болт М2 00011006 Болт М3 15
  • 16. 16 R3 = R1 + R2 Шифр детали Название детали 00011073 Гайка М1 00011075 Гайка М2 00011076 Гайка М3 00011003 Болт М1 00011006 Болт М3 00013063 Шайба М1 00013066 Шайба М3 00011077 Гайка М4 00011004 Болт М2
  • 17. 17 Пересечение - отношение, которое содержит множество кортежей, принадлежащих одновременно первому и второму отношениям. R1  R2 = R3 R1 inter section R2 = R3
  • 18. R1 Код Имя Город Рейтинг 1 Сергей Москва 20 2 Петр Киев 30 R2 Код Имя Город Рейтинг 5 Борис Киев 25 1 Сергей Москва 20 6 Василий Рязань 40 18
  • 19. R3 = R1  R2 = R2  R1 Код Имя Город Рейтинг 1 Сергей Москва 20 19
  • 20. R1 Шифр детали Название детали 00011073 Гайка М1 00011075 Гайка М2 00011076 Гайка М3 00011003 Болт М1 00011006 Болт М3 00013063 Шайба М1 00013066 Шайба М3 R2 Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011077 Гайка М4 00011004 Болт М2 00011006 Болт М3 20
  • 21. 21 R3 = R1  R2 Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011006 Болт М3 Перечень деталей с двух участков
  • 22. 22 Разность - отношение, которое содержит множество кортежей, принадлежащих первому отношению, но отсутствующих во втором отношении. R1 R2 = R3 R1 minus R2 = R3 R1 - R2 = R3
  • 23. R1 Код Имя Город Рейтинг 1 Сергей Москва 20 2 Петр Киев 30 R2 Код Имя Город Рейтинг 5 Борис Киев 25 1 Сергей Москва 20 6 Василий Рязань 40 23
  • 24. R3 = R1 - R2 Код Имя Город Рейтинг 2 Петр Киев 30 24 R3 = R2 - R1 Код Имя Город Рейтинг 5 Борис Киев 25 6 Василий Рязань 40
  • 25. R1 Шифр детали Название детали 00011073 Гайка М1 00011075 Гайка М2 00011076 Гайка М3 00011003 Болт М1 00011006 Болт М3 00013063 Шайба М1 00013066 Шайба М3 R2 Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011077 Гайка М4 00011004 Болт М2 00011006 Болт М3 25
  • 26. 26 R3 = R1 - R2 Шифр детали Название детали 00011075 Гайка М2 00011003 Болт М1 00013063 Шайба М1 00013066 Шайба М3 R3 = R2 - R1 Шифр детали Название детали 00011077 Гайка М4 00011004 Болт М2
  • 27. 27 Проекция - определяет новое отношение, которое содержит вертикальное подмножество исходного отношения, которое создается извлечением значений указанных атрибутов, используя строки дубликаты. R1 projection Выделяем столбцы
  • 28. R1 Код Имя Город Рейтинг 1 Сергей Москва 20 2 Петр Киев 30 R1 projection (код, имя) Код Имя 5 Борис 1 Сергей 6 Василий 28
  • 29. R2 Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011077 Гайка М4 00011004 Болт М2 00011006 Болт М3 29 R2 Название детали Гайка М1 Гайка М3 Гайка М4 Болт М2 Болт М3
  • 30. 30 Выборка - отношение полученное из кортежей одного отношения удовлетворяющие условию. Section Where условие
  • 31. R Код Имя Город Рейтинг 5 Борис Киев 25 1 Сергей Москва 20 6 Василий Киев 40 31 Rs Selection Where Город =‘Киев’ Код Имя Город Рейтинг 5 Борис Киев 25 6 Василий Киев 40
  • 32. R Шифр детали Название детали 00011073 Гайка М1 00011075 Гайка М2 00011076 Гайка М3 00011003 Болт М1 00011006 Болт М3 00013063 Шайба М1 00013066 Шайба М3 Rs Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011077 Гайка М4 32 Rs Selection Where Название детали = Г *
  • 33. 33 Произведение отношений - Пусть отношение «А» имеет Х кортежей, а отношение «B» имеет Y кортежей. Произведение двух отношений «А» и «B» является отношение «С», количество кортежей которого равно Х * Y и состоящего из попарного соединения всех строк одного отношения со всеми строками другого отношения.
  • 34. 34 Число атрибутов произведения равно сумме атрибутов А и B. C = A product B C = A * B
  • 35. A Код Имя Дисциплина Специальность 123 Сергей История СЗ 158 Петр Математика АС B Код Код_дисциплины № п/п 123 И350 1 158 ВА490 2 35
  • 36. 36 C = A * B Код Имя Дисциплина Специальность Код_ дисциплины № п/п 123 Сергей История СЗ И350 1 123 Сергей История СЗ ВА490 2 158 Петр Математика АС И350 1 158 Петр Математика АС ВА490 2 // при произведении должны быть связи
  • 37. А – номенклатура деталей Шифр детали Название детали 00011073 Гайка М1 00011076 Гайка М3 00011077 Гайка М4 00011004 Болт М2 00011006 Болт М3 37 B – цеха Цех Цех №1 Цех №2
  • 38. С = А * B Шифр детали Название детали Цех 00011073 Гайка М1 Цех №1 00011076 Гайка М3 Цех №1 00011077 Гайка М4 Цех №1 00011004 Болт М2 Цех №1 00011006 Болт М3 Цех №1 00011073 Гайка М1 Цех №2 00011076 Гайка М3 Цех №2 00011077 Гайка М4 Цех №2 00011004 Болт М2 Цех №2 00011006 Болт М3 Цех №2 38 Каждый цех изготовляет все детали
  • 39. 39 Деление отношений div - Пусть отношение «А» имеет несколько атрибутов, а отношение «B» имеет 1 атрибут, или отношения «А» и «B» имеют общий атрибут. Тогда делением «A» и «B» является отношение «С» с атрибутом из «А» и множеством картежей таких, что 1) они включают в себя множество значений общего атрибута; 2) Эти значения соответствуют значениям общего атрибута и «А» // иначе говоря результат «С» - такие значения из «А», для которых соответствует значение из «В».
  • 40. 40 «А» S P S1 P1 S1 P2 S1 P3 S1 P4 S1 P5 S1 P6 S2 P1 S2 P2 S3 P2 S4 P2 S4 P4 S4 P5 «B» P P1 C= A div B S S1 S2
  • 41. 41 «А» S P S1 P1 S1 P2 S1 P3 S1 P4 S1 P5 S1 P6 S2 P1 S2 P2 S3 P2 S4 P2 S4 P4 S4 P5 «B» P P1 P2 P3 P4 P5 P6 C= A div B S S1
  • 42. 42 «А» S P S1 P1 S1 P2 S1 P3 S1 P4 S1 P5 S1 P6 S2 P1 S2 P2 S3 P2 S4 P2 S4 P4 S4 P5 «B» P P2 P4 C= A div B S S1 S4
  • 43. 43 Соединение Join - данная операция представляет комбинацию нескольких операторов. Различают естественное соединение /эквивалентность/ внешнее соединение, левое, правое соединение таблиц образованных при связях.
  • 44. 44 Алгоритм соединения: 1) Формируется произведение двух таблиц; 2) Делается операция выборки по условию с соединением; 3) Операция проектирования для исключения дублирующих атрибутов
  • 45. A № Имя Дисциплина Специальность 123 Сергей История СЗ 158 Петр Математика АС 105 Марья Менеджмент СЧ B № ауд Код_дисциплины № п/п 123 И350 1 105 ВА490 3 123 ВА490 7 45
  • 46. 46 A product B № Имя Дисц-на Спец. № ауд Код_дис № п/п 123 Сергей История СЗ 123 И350 1 123 Сергей История СЗ 105 ВА490 3 123 Сергей История СЗ 123 ВА490 7 158 Петр Математика АС 123 И350 1 158 Петр Математика АС 105 ВА490 3 158 Петр Математика АС 123 ВА490 7 105 Марья Менеджмент СЧ 123 И350 1 105 Марья Менеджмент СЧ 105 ВА490 3 105 Марья Менеджмент СЧ 123 ВА490 7
  • 47. 47 Выборка selection № № Имя Дисц-на Спец. № ауд Код_дис № п/п 123 Сергей История СЗ 123 И350 1 123 Сергей История СЗ 123 ВА490 7 105 Марья Менеджмент СЧ 105 ВА490 3 А Join B (соединение) № Имя Дисц-на Спец. Код_дис № п/п 123 Сергей История СЗ И350 1 123 Сергей История СЗ ВА490 7 105 Марья Менеджмент СЧ ВА490 3
  • 48. К дополнительным операторам относятся: расширение, подведение итогов, операции работы с таблицами. 48
  • 49. 49 Расширение - данная операция состоит в том, что отношение дополняется новым вычисляемым атрибутом, в котором данные значения берутся для вычисления из старых атрибутов.
  • 50. A № Товар Цена Количество 1 Кефир 25,00 р. 4 2 Творог 42,00 р. 6 3 Киви 10,00 р. 12 50 B - Расширение № Товар Цена Количество Сумма: [Цена]*[Количество] 1 Кефир 25,00 р. 4 100,00 р. 2 Творог 42,00 р. 6 232,00 р. 3 Киви 10,00 р. 12 120,00 р.
  • 51. 51 Подведение итогов - все операции подведения итогов по таблице. Нахождение: Min - минимум Max - максимум Sum - сумма Count – количество Avg – среднее арифметическое
  • 52. 52 Операции с таблицами - действия с таблицами: Создание таблицы Удаление Переименование Обновление Эти операции лежат в основе языка описания данных – группа DDL (Data Definition Language)
  • 53. 53 На основе реляционной алгебры был создан язык программных запросов:  QBE – запрос по образцу (используется бланк, в котором заносятся имена атрибутов и условие запроса) SQL – Structured Query Language - структурированный язык запросов