Введение в дисциплину «Безопасность систем баз данных». Теоретические основы построения реляционных баз данных. Верификация баз данных и проведение аудита в СБД. Распределенные базы данных, страница 17

R1

R2

x0

x11

 

x0

x21

 

1

2

2

11

2

3

2

7

3

3

NULL

19

4

0

4

53

5

1

3

26

а)

x0

x11

x21

 

x0

x11

x21

2

3

11

1

2

NULL

2

3

7

2

3

11

3

3

26

2

3

7

4

0

53

3

3

26

4

0

53

б)

5

1

NULL

NULL

NULL

19

в)

x0

x11

x21

x0

x11

x21

1

2

NULL

2

3

11

2

3

11

2

3

7

2

3

7

3

3

26

3

3

26

4

0

53

4

0

53

NULL

NULL

19

5

1

NULL

д)

г)

Рисунок 2.17 – Внешнее соединение

2.3.5. Расширенная проекция

В современных СУБД часто используется операция расширенной проекции, позволяющая выполнять не только «вырезку» нужных атрибутов из отношения, но и выполнять над атрибутами различные операции (например, арифметические), благодаря чему в результирующем отношении получается новый атрибут. Кроме того, расширенная проекция позволяет задавать атрибутам результирующего отношения новые имена.

Рассмотрим отношение teachers (рис. 2.14). Получим на его основе новое отношение, которое содержит атрибут fio – фамилии и инициалы преподавателей. Для этого следует выполнить операцию расширенной проекции, которая включает операции работы со строками и задание имени для нового атрибута. Операцию расширенной проекции запишем следующим образом:

.

Знак ‘→’ показывает, что атрибуту в результирующем отношении будет задано имя fio.

Результат операции показан на рис. 2.18.

teachers

surname

firstname

patronymic

degree

post

Зиновьев

Денис

Алексеевич

д. т. н.

профессор

Борисов

Евгений

Васильевич

к. т. н.

старший преподаватель

Иванов

Михаил

Яковлевич

д. ф-м. н.

профессор

Елисеев

Валерий

Германович

NULL

ассистент

fio

Зиновьев Д. А.

Борисов Е. В.

Иванов М. Я.

Елисеев В. Г.