рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

UNION|INТERSECT|MINUS|TIМES|JOIN|DIVIDEBY

UNION|INТERSECT|MINUS|TIМES|JOIN|DIVIDEBY - раздел Информатика, ИНФОРМАЦИЯ И ИНФОРМАТИКА. АЛГЕБРА ЛОГИКИ. СИСТЕМЫ СЧИСЛЕНИЯ По Приведенной Грамматике Можно Сделать Следующие Замечания. 1) Р...

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

1) Реляционные операторы UNION, INTERSECT и MINUS требуют, чтобы отношения были совместимыми по типу, т. е. имели идентичные заголовки.

2) Легко проверить, что операторы UNION, INTERSECT, TIMESи JOINассоциативны и коммутативны.

3) Если отношения A и B не имеют общих атрибутов, то операция соединения A JOIN Bэквивалентна операции A TIMES B, т. е. в таком случае соединение вырождается в декартово произведение. Такое соединение называют естественным.

4) Другой допустимый синтаксис для синтаксической категории переименования таков:

( терм RENAМE список-переименований ). Здесь каждый из элементов списка переименований представляет собой выражение имя_атрибута AS имя_атрибута.

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

 

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

 

Оператор естественного соединения по атрибуту Y определяется через оператор декартового произведения и оператор ограничения:

 

A JOIN B = ((A TIMES (B RENAME Y AS Y1)) WHERE Y=Y1)[X, Y, Z]

 

Оператор пересечения выражается через вычитание следующим образом:

 

A INTERSECT B = A MINUS (A MINUS B)

Оператор деления выражается через операторы вычитания, декартового произведения и проекции следующим образом:

 

A DIVIDEBY B = A[X] MINUS ((A[X] TIMES B) MINUS A)[X]

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

 

В качестве примера рассмотрим запросы на языке реляционной алгебры для схемы базы данных «Поставщики и детали», представленной следующими схемами отношений:

 

S(Sno: integer, Sname: string, Status: integer, City: string)

P(Pno: integer, Pname: string, Color: string, Weight: real, City: string)

SP(Sno: integer, Pno: integer, Qty: integer)

 

В данном примере имена доменов представлены именами типов, имена типов отделяются от имен атрибутов двоеточием, первичные ключи выделены подчеркиванием, а имена внешних ключей схемы отношения SP (ПОСТАВКА) совпадают с именами первичных ключей схем отношений S (ПОСТАВЩИК) и P (ДЕТАЛЬ).

 

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

 

( ( SP JOIN S ) WНEPE Рno = 2 ) [ Sname ]

 

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

 

( ( ( Р WНERE Color = 'Красный' ) JOIN SP) [ Sno ] JOIN S ) [ Sname ]

 

Другая формулировка того же запроса:

 

( ( ( Р WНERE Color = 'Красный' ) [ Рno ] JOIN SP ) JOIN S ) [ Sname ]

 

Этот пример подчеркивает одно важное обстоятельство: возможность сформулировать один и тот же запрос несколькими способами.

 

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

 

( ( SP [ Sno, Рno] DIVIDE BY Р [ Рno ] JOIN S ) [ Sname ]

 

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

 

SP [ Sno, Рno ] DIVIDE ВY ( SP WНEPE Sno = 2 ) [ Рno ]

 

5) Получить все пары номеров поставщиков, размещенных в одном городе

 

( ( ( S RENAМE Sno AS FirstSno ) [ FirstSno, City ] JOIN

( S RENAМE Sno AS SecondSno ) [ SecondSno , City ] )

WНEPE FirstSno < SecondSno ) [ FirstSno, SecondSno ]

 

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

 

((S[ Sno ] MINUS (SP WНEPE Рno = 2 ) [ Sno ] ) JOIN S ) [Sname]

 

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

 

Реляционное исчисление основано на разделе математической логики, который называется исчислением предикатов. Реляционное исчисление существует в двух формах: исчисление кортежей и исчисление доменов. Основное различие между ними состоит в том, что переменные исчисления кортежей яв­ляются переменными кортежей (они изменяются на отношении, а их значения являются кортежами), в то время как переменные исчисления доменов являются переменными доменов (они изменяются на доменах, а их значения являются скалярами).

 

Упрощенный синтаксис выражений исчисления кортежей в форме БНФ имеет вид.

 

объявление-кортежной-переменной ::=

RANGE OF переменная IS список-областей

область ::=

отношение |

реляционное-выражение

реляционное-выражение ::=

(список-целевых-элементов)[WHERE wff]

целевой-элемент ::=

переменная |

переменная.атрибут [AS атрибут]

wff ::=

условие |

NOT wff |

условие AND wff |

условие OR wff |

IF условиеTHEN wff |

EXISTS переменная (wff) |

FORALL переменная (wff) |

(wff)

условие ::=

(wff) |

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

 

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

1) Квадратные скобки здесь указывают на компоненты, которые по умолчанию могут быть опущены.

2) Категории отношение, атрибут и переменная – это идентификаторы (т. е. имена).

3) Реляционное выражение содержит заключенный в скобки список целевых элементов и выражение WHERE, содержащее формулу wff («правильно построенную формулу»). Такая формула wff составляется из кванторов (EXISTS и FORALL), свободных и связанных переменных, констант, операторов сравнения, логических (булевых) опе­раторов и скобок. Каждая свободная переменная, которая встречается в формуле wff, должна быть также перечислена в списке целевых элементов.

4) Категория условие представляет или формулу wff, заключенную в скобки, или простое скалярное сравнение, где каждый компаранд оператора сравнения – это либо скалярная константа, либо значение атрибута в форме переменная.атрибут.

 

Пусть кортежная переменная T определяются следующим образом:

 

RANGE OF T IS R1, R2, ..., Rn

 

Тогда отношения R1, R2, ..., Rn должны быть совместимы по типу т. е. они должны иметь идентичные заголовки, и кортежная переменная T изменяется на объединении этих отношений, т. е. её значение в любое заданное время будет некоторым текущим кортежем, по крайней мере одного из этих отношений.

 

Примеры объявлений кортежных переменных.

 

RANGE OF SX IS S

RANGE OF SPX IS SP

– Конец работы –

Эта тема принадлежит разделу:

ИНФОРМАЦИЯ И ИНФОРМАТИКА. АЛГЕБРА ЛОГИКИ. СИСТЕМЫ СЧИСЛЕНИЯ

Ассоциация московских вузов... Московский государственный технический университет...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: UNION|INТERSECT|MINUS|TIМES|JOIN|DIVIDEBY

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

ПОНЯТИЕ ИНФОРМАЦИИ
  Слово «Информация» происходит от латинского слова informatio – сведение, разъяснение, ознакомление. Строгого научного определения информации в настоящее время не су

АЛГЕБРА ЛОГИКИ
Высказывание – повествовательное предложение, относительно которого определенно и объективно можно сказать истинно оно или ложно (ЛОЖЬ или ИСТИНА, 0 или 1, TRUE или FALSE). Алгебра логики

СИСТЕМЫ СЧИСЛЕНИЯ
  Под системой счисления понимается совокупность приемов и правил представления чисел в виде конечного числа символов. Система счисления имеет свой алфавит – упорядоченный набор симво

НА СИНТАКСИЧЕСКОМ УРОВНЕ
  Существуют меры информации синтаксического, семантического и прагматического уровней. В нашем курсе нас будет интересовать прежде всего мера информации синтаксического уровня.

ИСТОРИЧЕСКАЯ СПРАВКА
  Компьютер – это электронное устройство для автоматизации процессов создания, хранения, воспроизведения, обработки и транспортировки данных. Компьютер представляет собо

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

Клавиатура.
Клавиатура представляет собой набор переключателей, объединенных в матрицу. При нажатии на клавишу, контроллер, установленный в самой клавиатуре, определяет координаты нажатой клавиши и в виде скэн

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

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

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

Струйные принтеры.
В одно и то же время независимо друг от друга HP и Canon разработали технологию термической печати с помощью чернил. Они вывели на рынок свои разработки под марками IncJet — термоструйная (НР) и Bu

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

Реляционная модель данных
Основоположником теории реляционных баз данных является британский учёный Эдгар Кодд, который в 1970 году опубликовал первую работу по реляционной модели данных. Наиболее распространенная трактовка

RANGE OF SY IS
(SX) WHERE SX.City = 'Смоленск', (SX) WHERE EXISTS SPX (SPX.Sno = SX.Sno AND SPX.Pno = 1)   Здесь переменная корте

Проектирование реляционных баз данных
При проектировании базы данных решаются две основные проблемы: · Каким образом отобразить объекты предметной области в абстрактные объекты модели данных, чтобы это отображение не противоре

Язык реляционных баз данных SQL
Из рассмотрения реляционной модели известно, что двумя фундаментальными языками запросов к реляционным базам данных являются языки реляционной алгебры и реляционного исчисления. При всей своей стро

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги