СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

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

Категория: Информатика

Нажмите, чтобы узнать подробности

Просмотр содержимого документа
«Операции над отношениями»

Лекция 7   Операции над отношениями

Лекция 7 Операции над отношениями

Операции над отношениями Схемой отношения R называется конечное множество имен атрибутов {A 1 ,A 2 ,...,A N }. Каждому множеству атрибута A i ставится в соответствие множе­ство D i , называемое доменом атрибута A i , 1  i   N .  Обновление отношений Для этого вводится операция добавление, которая для отношения R(A 1 ,А 2 ,... ,А N ) имеет вид:  ADD (R; A 1 =d 1 , A 2= d 2 ,.. .,A N =d N ) Пример.  ADD (Расписание; НОМЕР=117, ПУНКТ_ОТПРАВЛЕНИЯ=РИГА,  ПУНКТ_НАЗНАЧЕНИЯ=КИЕВ, ВРЕМЯ_ВЫЛЕТА=22.05,  ВРЕМЯ_ПРИБЫТИЯ=0.43) Когда порядок имен атрибутов фиксирован, допустима более короткая запись:  ADD (Расписание; 117, РИГА, КИЕВ, 22.05, 0.43)

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

Схемой отношения R называется конечное множество имен атрибутов {A 1 ,A 2 ,...,A N }. Каждому множеству атрибута A i ставится в соответствие множе­ство D i , называемое доменом атрибута A i , 1 i N .

Обновление отношений

Для этого вводится операция добавление, которая для отношения R(A 1 ,А 2 ,... ,А N ) имеет вид:

ADD (R; A 1 =d 1 , A 2= d 2 ,.. .,A N =d N )

Пример.

ADD (Расписание; НОМЕР=117, ПУНКТ_ОТПРАВЛЕНИЯ=РИГА,

ПУНКТ_НАЗНАЧЕНИЯ=КИЕВ, ВРЕМЯ_ВЫЛЕТА=22.05,

ВРЕМЯ_ПРИБЫТИЯ=0.43)

Когда порядок имен атрибутов фиксирован, допустима более короткая запись:

ADD (Расписание; 117, РИГА, КИЕВ, 22.05, 0.43)

Операция удаление:  DEL (R; A 1 =d 1 , A 2 =d 2 , ..., A N =d N ) Если имена атрибутов упорядочены, то DEL (R; d 1 , d 2 , ..., d i ). Например:  DEL (расписание, 305, МОСКВА, СВЕРДЛОВСК, 21.50, 15.10) Можно произвести удаление по ключу: DEL (расписание; 83). Операция изменения: СН (R; В 1 =d 1 ; B 2 =d 2 ,..., В m =d m ; C 1 =e 1 , C 2 =e 2 , . .., C р =e р ) Пример. СН (Расписание; НОМЕР=323, ПУНКТ_ОТПРАВЛЕНИЯ=МОСКВА,  ПУНКТ_НАЗНАЧЕНИЯ=СВЕРДЛОВСК, ВРЕМЯ_ВЫЛЕТА=21.30,  ВРЕ-МЯ_ПРИБЫТИЯ= 14.50)  Сокращенный вариант:  СН (расписание; ОМЕР=323, ВРЕМЯ_ВЫЛЕТА=21.30, ВРЕМЯ_ПРИБЫ -  ТИЯ=14.50)

Операция удаление:

DEL (R; A 1 =d 1 , A 2 =d 2 , ..., A N =d N )

Если имена атрибутов упорядочены, то DEL (R; d 1 , d 2 , ..., d i ).

Например:

DEL (расписание, 305, МОСКВА, СВЕРДЛОВСК, 21.50, 15.10)

Можно произвести удаление по ключу: DEL (расписание; 83).

Операция изменения:

СН (R; В 1 =d 1 ; B 2 =d 2 ,..., В m =d m ; C 1 =e 1 , C 2 =e 2 , . .., C р =e р )

Пример.

СН (Расписание; НОМЕР=323, ПУНКТ_ОТПРАВЛЕНИЯ=МОСКВА,

ПУНКТ_НАЗНАЧЕНИЯ=СВЕРДЛОВСК, ВРЕМЯ_ВЫЛЕТА=21.30,

ВРЕ-МЯ_ПРИБЫТИЯ= 14.50)

Сокращенный вариант:

СН (расписание; ОМЕР=323, ВРЕМЯ_ВЫЛЕТА=21.30, ВРЕМЯ_ПРИБЫ -

ТИЯ=14.50)

1. Объединение отношений R 1 и R 2  R = R 1    R 2 = {r | r   R 1    r   R 2 } Операция применяется только к отношениям одной и той же арности. Отношение R также той же арности .

1. Объединение отношений R 1 и R 2

R = R 1  R 2 = {r | r  R 1  r  R 2 }

Операция применяется только к отношениям одной и той же арности. Отношение R также той же арности .

 2. Разность отношений R 1 и R 2 R = R 1 – R 2 = {r   r   R 1    r   R 2 }  Разностью (R 1 – R 2 ) множество кортежей, принадлежащих R1, но не принадлежащих R 2 . Отношения R 1 и R 2 должны быть одинаковой арности.

2. Разность отношений R 1 и R 2

R = R 1 – R 2 = {r  r  R 1  r  R 2 }

Разностью (R 1 – R 2 ) множество кортежей, принадлежащих R1, но не принадлежащих R 2 . Отношения R 1 и R 2 должны быть одинаковой арности.

 3. Декартово произведение отношений R 1 и R 2 A X A Y B X B Y C X  C Y R = R 1 х R 2 = {r 1 r 2   r 1  R 1   r 2  R 2 } Если отношение R 1 имеет арность k 1 , а отношение R 2 - арность k 2 то декартовым произведением отношений R 1 и R 2 является множество кортежей арности (k 1 +  k 2 ). Причем первые k 1 элементов образуют кортеж из отно - шения R 1 , а последние k 2 элементов – из отношения R 2.  

3. Декартово произведение отношений R 1 и R 2

A X

A Y

B X

B Y

C X

C Y

R = R 1 х R 2 = {r 1 r 2  r 1  R 1  r 2  R 2 }

Если отношение R 1 имеет арность k 1 , а отношение R 2 - арность k 2 то декартовым произведением отношений R 1 и R 2 является множество кортежей арности (k 1 + k 2 ). Причем первые k 1 элементов образуют кортеж из отно - шения R 1 , а последние k 2 элементов – из отношения R 2.

 

4. Проекция отношения R 1 на компоненты i 1 , i 2 , ..., i R : R =  i 1 , i 2 , … ,i R (R 1 ), где i 1 , i 2 , ..., i R   номера столбцов отношения R 1 . Операция проекция заключается в том, что из отношения R 1 выбираются указанные столбцы и компонуются в указанном порядке.

4. Проекция отношения R 1 на компоненты i 1 , i 2 , ..., i R :

R =  i 1 , i 2 , ,i R (R 1 ), где i 1 , i 2 , ..., i R  номера столбцов отношения R 1 .

Операция проекция заключается в том, что из отношения R 1 выбираются указанные столбцы и компонуются в указанном порядке.

5.Селекция (выборка) отношения R 1 по формуле F: R =  F (R 1 ) или R [A  B ], где А и В  домены. F  формула, образованная : а) операндами, являющимися номерами столбцов; б) логическими операторами    и,    или,      не; в) арифметическими операторами сравнения:         В формуле могут использоваться скобки.

5.Селекция (выборка) отношения R 1 по формуле F:

R =  F (R 1 ) или R [A  B ], где А и В  домены.

F  формула, образованная :

а) операндами, являющимися номерами столбцов;

б) логическими операторами   и,   или,

  не;

в) арифметическими операторами сравнения:    

В формуле могут использоваться скобки.

 6. Пересечение отношений R 1 и R 2 R = R 1  R 2 = R 1 – (R 1 – R 2 ) 6

6. Пересечение отношений R 1 и R 2

R = R 1  R 2 = R 1 – (R 1 – R 2 )

6

7. Частное отношение (симметричная разность) R= R 1  R 2 = { r  r  R 1  r  R 2 ,  но не обоим вместе }

7. Частное отношение (симметричная разность)

R= R 1  R 2 = { r  r  R 1  r  R 2 ,

но не обоим вместе }

9. Деление - представляет процесс, соответствующий операции обратной к декартовому произведению. a x a y a z b x c y x y a = (R 1  R 2 )  R 2 = R 1  

9. Деление - представляет процесс, соответствующий операции обратной к декартовому произведению.

a x

a y

a z

b x

c y

x

y

a

=

(R 1  R 2 )  R 2 = R 1