17226

ТЕОРЕТИКО-МНОЖЕСТВЕННЫЕ ОПЕРАЦИИ РЕЛЯЦИОННОЙ АЛГЕБРЫ

Лекция

Информатика, кибернетика и программирование

Лекция №5 Теоретикомножественные операции реляционной алгебры Объединение Как было отмечено теоретикомножественные операции Определение. Объединением двух совместимых по типу отношений и называется отношение с той же схемой что и у отношений и сос

Русский

2013-06-30

126.5 KB

16 чел.

Лекция №5

Теоретико-множественные операции реляционной алгебры

Объединение

Как было отмечено, теоретико-множественные операции

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

Синтаксис операции объединения:

или A  B

Замечание. Объединение, как и любое отношение, не может содержать одинаковых кортежей. Поэтому, если некоторый кортеж входит и в отношение , и отношение , то в объединение он входит один раз.

Пример. Пусть даны два отношения  и  с информацией о сотрудниках:

Таблица 1 Отношение A 

Табельный номер

Фамилия

Зарплата

1

Иванов

1000

2

Петров

2000

3

Сидоров

3000

Таблица 2 Отношение B 

Табельный номер

Фамилия

Зарплата

1

Иванов

1000

2

Пушников

2500

4

Сидоров

3000

Объединение отношений  и  будет иметь вид:

Таблица 3 Отношение A UNION B 

Табельный номер

Фамилия

Зарплата

1

Иванов

1000

2

Петров

2000

3

Сидоров

3000

2

Пушников

2500

4

Сидоров

3000

Синтаксическая конструкция на SQL таких запросов описывается следующим образом:

SELECT X,Y,…Z FROM A

UNION

SELECT X,Y,…Z FROM B

Для приведенного примера SQL – запрос соответствует структуре:

SELECT Табельный номер, Фамилия, Зарплата FROM A 

UNION

SELECT Табельный номер, Фамилия, Зарплата FROM B

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

Пересечение

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

Синтаксис операции пересечения:

A EXCEPT B или A B

Пример 3. Для тех же отношений  и , что и в предыдущем примере пересечение имеет вид:

Таблица 4 Отношение A EXCEPT B 

Табельный номер

Фамилия

Зарплата

1

Иванов

1000

Синтаксическая конструкция на SQL таких запросов описывается следующим образом:

SELECT X,Y,…Z FROM A

EXCEPT

SELECT X,Y,…Z FROM B

Для приведенного примера SQL – запрос соответствует структуре:

SELECT Табельный номер, Фамилия, Зарплата FROM A 

EXCEPT

SELECT Табельный номер, Фамилия, Зарплата FROM B

Устно. Казалось бы, что в отличие от операции объединения, потенциальные ключи могли бы наследоваться пересечением отношений. Однако это не так. Вообще, никакие реляционные операторы не передают результирующему отношению никаких данных о потенциальных ключах. Причина этого заключается в том, что потенциальный ключ - семантическое понятие, отражающее различимость объектов предметной области. Наличие потенциальных ключей не выводится из структуры отношения, а явно задается для каждого отношения, исходя из его смысла. Реляционные же операторы являются формальными операциями над отношениями и выполняются одинаково, независимо от смысла данных, содержащихся в отношениях. Поэтому, реляционные операторы ничего не могут "знать" о смысле данных.

Вычитание

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

Синтаксис операции вычитания:

A INTERSECT B или A B

Пример 4. Для тех же отношений  и , что и в предыдущем примере вычитание имеет вид:

Таблица 5 Отношение A INTERSECT B 

Табельный номер

Фамилия

Зарплата

2

Петров

2000

3

Сидоров

3000

Синтаксическая конструкция на SQL таких запросов описывается следующим образом:

SELECT X,Y,…Z FROM A

INTERSECT

SELECT X,Y,…Z FROM B

Для приведенного примера SQL – запрос соответствует структуре:

SELECT Табельный номер, Фамилия, Зарплата FROM A 

INTERSECT

SELECT Табельный номер, Фамилия, Зарплата FROM B

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

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

,

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

,

таких, что , .

Синтаксис операции декартового произведения:

A  B

Замечание. Перемножать можно любые два отношения, совместимость по типу при этом не требуется.

Замечание. Мощность произведения A  B равна произведению мощностей отношений  и , т.к. каждый кортеж отношения  соединяется с каждым кортежем отношения .

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

Пример. Пусть даны два отношения  и  с информацией о поставщиках и деталях:

Таблица 6 Отношение A (Поставщики) 

Номер поставщика

Наименование поставщика

1

Иванов

2

Петров

3

Сидоров

Таблица 7 Отношение B (Детали) 

Номер детали

Наименование детали

1

Болт

2

Гайка

3

Винт

Декартово произведение отношений  и  будет иметь вид:

Таблица 8 Отношение A  B 

Номер поставщика

Наименование поставщика

Номер детали

Наименование детали

1

Иванов

1

Болт

1

Иванов

2

Гайка

1

Иванов

3

Винт

2

Петров

1

Болт

2

Петров

2

Гайка

2

Петров

3

Винт

3

Сидоров

1

Болт

3

Сидоров

2

Гайка

3

Сидоров

3

Винт

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

Замечание. По умолчанию операции UNION, INTERSECT и EXCEPT удаляют из результирующих отношений повторяющиеся строки. Но если требуется оставить все строки, в SQL используются специальные формы операций UNION ALL, INTERSECT ALL и EXCEPT ALL.

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

(Примеры таблиц смотреть в лекции 4)

Пример. Получить имена поставщиков, поставляющих деталь номер 2.

Решение:

PNAME(DNUM = 2(DP JOIN P))

select P.PNAME

from DP inner join P on DP.PNUM = P.PNUM

where DNUM = 2

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

Решение:

PNAME((DNAME = Гайка(D JOIN DP) JOIN P))

select PNAME

from D inner join DP on D.DNUM = DP.DNUM

where D.DNAME = ‘Гайка

Пример. Получить имена поставщиков, поставляющих все детали.

Решение:

PNAME((PNUM, DNUM(DP) / DNUM(D)) JOIN P)

Ответ на этот запрос можно получить и пошагово:

T1 = PNUM, DNUM(DP) – получить список номера поставщиков и поставляемые ими детали;

T2 = DNUM(D) – получить список номеров всех деталей;

T3 = T1 / T2 – получить список всех поставляемых деталей;

T4 = T3 JOIN P – получить список номеров деталей и имена поставщиков;

T5 = PNAME(T4) – список имен поставщиков поставляющих все детали.

Замечание. Используя средства SQL, одним запросом эту выборку сформулировать нельзя.

Пример. Получить имена поставщиков, не поставляющих деталь номер 2.

Решение:

PNAME (PNUM (PNUM(P) INTERSECT (DNUM = 2 (P JOIN DP))) JOIN P)

Ответ на этот запрос можно получить и пошагово:

T1 = PNUM(P) - получить список номеров всех поставщиков;

T2 = P JOIN DP - соединить данные о поставщиках и поставках

T3 = DNUM = 2(T2) - в данных о поставщиках и поставках оставить только данные о поставках детали номер 2.

T4 = PNUM(T3) - получить список номеров поставщиков, поставляющих деталь номер 2.

T5 = T1 INTERSECT T4 - получить список номеров поставщиков, не поставляющих деталь номер 2.

T6 = T3 JOIN P - соединить список номеров поставщиков, не поставляющих деталь номер 2 с данными о поставщиках (получатся полные данные о поставщиках, не поставляющих деталь номер 2).

T7 = PNAME(T6) - искомый ответ (имена поставщиков, не поставляющих деталь номер 2).

Используя SQL операцию вычитанию можно реализовать одним запросом, например

select PNAME

from P

where P.PNUM not in (select P.PNUM

from DP inner join P

on DP.PNUM = P.PNUM

where DNUM = 2)


 

А также другие работы, которые могут Вас заинтересовать

22168. Понятие затрат, общие положения по управлению затратами 182 KB
  Управление затратами – это не минимизация затрат, что может привести к сокращению производства, а более эффективное использование ресурсов компании, их экономия и максимизация отдачи от них на всех этапах производственного процесса. Постановка процесса управления затратами в компании заключается в признании затрат
22169. ФОТОПРИЕМНИКИ 965.5 KB
  25 Заключение31 Контрольные вопросы. Для ВОП характерны два основных способа получения измерительной информации. Первый способ отражает работу ВОП рефлектометрического типа для которых наиболее характерно отсутствие контакта с объектом измерений или вспомогательным измерительным звеном. Рассмотрим зависимость выходного сигнала ВОП на примере преобразования светового потока отражающегося без потерь и рассеяния от движущейся плоской поверхности.
22170. Явления, эффекты, законы. Восстановление связей между состояниями вещества или предмета и внешними физическими полями 830.5 KB
  В рассматриваемом курсе мы условно разобьем физические величины на ряд групп: пространственновременные физические величины; механические физические величины; тепловые физические величины; акустические физические величины; электромагнитные физические величины; оптические физические величины; ядерные физические величины; химические физические величины. Приборы позволяющие измерять перечисленные физические величины разнообразны по принципу работы используемым явлениям эффектам конструктивному исполнению параметрам...
22171. ТЕПЛОВЫЕ ЯВЛЕНИЯ 112.5 KB
  ОБЩИЕ ПОНЯТИЕ ТЕОРИИ ТЕПЛОВЫХ ЯВЛЕНИЙ В отличие от механической энергии которая может изменяться только за счет работы внутренняя энергия может изменяться как за счет работы так и при контакте с телами имеющими другую температуру т.При соприкосновении двух тел имеющих различную температуру происходит обмен энергией движения структурных частиц молекул атомов свободных электронов вследствие чего интенсивность движения частиц тела имеющего меньшую температуру увеличивается а интенсивность движения частиц тела с более высокой...
22172. ТЕРМОМАГНИТНЫЙ МЕТОД ИЗМЕРЕНИЯ ТЕМПЕРАТУРЫ 195 KB
  Зависимость парамагнитной восприимчивости от Температуры 4 2. Экспериментально достижимая область температур постоянно понижается; вместе с тем повышаются требования к точности измерения температуры поэтому конструирование новых и надёжных приборов становиться жизненно необходимой задачей. Можно сказать что измерение температуры в миллиградусном диапазоне более сложно чем само достижение этих температур и едва ли менее важно.
22173. ТЕРМОЭЛЕКТРИЧЕСКИЕ ПРЕОБРАЗОВАТЕЛИ. Конструкция термопар 5.65 MB
  Если один спай термопары называемый рабочим спаем поместить в среду с температурой t1 подлежащей измерению а температуру другого нерабочего спая поддерживать постоянной то и независимо от того каким образом произведено соединение термоэлектродов спайкой сваркой и т. Таким образом естественной входной величиной термопары является температура t1 ее рабочего спая а выходной величиной термоэ. Приборы представляющие собой сочетание термопары и указателя используемые для измерения температуры часто называют не термометрами а...
22174. ТЕРМОСОПРОТИВЛЕНИЯ 1.45 MB
  4 Преобразователи промышленных термометров сопротивления.19 Измерительные цепи термометров сопротивления. Термосопротивлением называется проводник или полупроводник с большим температурным коэффициентом сопротивления находящийся в теплообмене с окружающей средой вследствие чего его сопротивление резко зависит от температуры и поэтому определяется режимом теплового обмена между проводником и средой.
22175. Основы организации финансов предприятий 68 KB
  Финансы – это наука об управлении денежными потоками. Это экономические отношения по поводу создания, распределения и использования фондов денежных средств. Финансы организаций это тоже экономические отношения, но на микроэкономическом уровне. В нашем курсе понятие организация и предприятие (фирма) совпадают и в дальнейшем будут взаимозаменяемы.
22176. Трансформаторные преобразователи перемещения 154.5 KB
  К одной из них первичной или обмотки возбуждения подводится переменное напряжение питания U а с другой вторичной или сигнальной обмотки снимается индуцированное в ней напряжение Uвых зависящее от коэффициента взаимоиндукции. Eг = jωMI1 где ω частота питающего напряжения; M взаимная индуктивность обмоток; I1 ток протекающий в цепи первичной обмотки. Включение обмотки возбуждения в сеть Чувствительность преобразователя можно увеличить за счет: Увеличения ампервитков обмотки возбуждения до индукции в стали магнитопровода 1 ...