Реляционные операторы
Рефераты >> Программирование и компьютеры >> Реляционные операторы

Никакой атрибут не может быть указан в списке атрибутов более одного раза.

Обратим внимание на следующее.

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

2. Проекция вида R[], т.е. такая, в которой список атрибутов не пропущен, но пустой, тоже допустима. Она представляет собой “нулевую” проекцию.

Отметим, что на практике часто бывает удобно указывать не те атрибуты, по которым берётся проекция, а те, которые проекцией “отбрасываются”. Например, удобнее сказать: “проекция, исключающая атрибут WEIGHT из отношения Р” вместо “проекция отношения Р по атрибутам P#, PNAME, COLOR и CITY”. Однако здесь не предлагается никакого конкретного синтаксиса для этой альтернативной, но, конечно, эквивалентной версии операции проекции.

ОБЪЕДИНЕНИЕ

Объединением двух совместимых по типу отношений А и В (А UNION B) называется отношение с тем же заголовком, как и в отношениях А и В, и с телом, состоящим из множества всех кортежей t, принадлежащих А или В или обоим отношениям.

Пример. Пусть отношения А и В будут такими, как показано на рисунке 2 (отношение А представляет поставщиков из Лондона, а отношение В – поставщиков, которые, например, поставляют деталь Р1). Тогда выражение A UNION B (см. рис. 3) представляет поставщиков, которые или размещаются в Лондоне, или поставляют деталь Р1 (либо и то и другое). Обратим внимание, что результат имеет три кортежа, а не четыре – повторяющиеся кортежи удаляются по определению.

рис.2

рис.3

Замечание. Вопрос удаления дубликатов не возникает в других традиционных операциях над множествами (пересечение, вычитание и произведение). Фактически существует ещё только одна операция (помимо объединения), где этот вопрос возникает, – проекция.

НЕСКОЛЬКО СИНТАКСИЧЕСКИХ УПРОЩЕНИЙ

Легко проверить, что операция объединения ассоциативна, т.е. если А, В и С – произвольные выражения (дающие совместимые по типу отношения), то выражения

(A UNION B) UNION C

и

A UNION (B UNION C)

эквиваленты. Следовательно, для удобства можно разрешить запись последовательных операторов объединения без использования круглых скобок; таким образом, предыдущее выражение можно однозначно упростить:

A UNION B UNION C

Аналогичные замечания можно сделать и для операций пересечения и декартова произведения (но не вычитания). Заметим ещё, что операции объединения, пересечения и декартова произведения (но не вычитания) ещё и коммутативны, т.е. выражения

A UNION B

и

B UNION A

эквивалентны; так же и для операций пересечения и произведения.

ТЕСТЫ

Вопрос №1. В каком году Кодд предложил реляционную алгебру?

Вариант ответа

Оценка, %

Комментарии к ответу

Другой вариант

0

Не верно

В начале 70-х

50

Не полный ответ

В 1971 г.

100

Верно

Вопрос №2. Реляционно полными языками являются…

Вариант ответа

Оценка, %

Комментарии к ответу

Большинство реляционных языков запросов

40

Не полный ответ

Языки, управляющие СУБД

0

Не верно

Языки, позволяющие получить любое отношение, которое можно вывести через реляционное исчисление

100

Верно

Вопрос №3. Реляционная алгебра – это…

Вариант ответа

Оценка, %

Комментарии к ответу

Реляционный язык

0

Не верно

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

100

Верно

Язык последовательного использования отношений

50

Не полный ответ

Вопрос №4. Назовите основные операции релятивной алгебры.

Вариант ответа

Оценка, %

Комментарии к ответу

Выборка, объединение

40

Не полный ответ

Селекция, проекция, декартово произведение, объединение, разность

100

Верно

Соединение, пересечение, деление

0

Не верно

Вопрос №5. Операции селекции и проекции являются…

Вариант ответа

Оценка, %

Комментарии к ответу

Унарными

100

Верно

Бинарными

0

Не верно

Вопрос №6. Селекция – это…

Вариант ответа

Оценка, %

Комментарии к ответу

Сокращённое название q-селекции, где q обозначает любой скалярный оператор сравнения (=, ¹, >, ³ и т.д.)

50

Не полный ответ

Отношение, имеющее тот же заголовок, что и отношение А, и тело, содержащее множество всех кортежей t отношения А, для которых проверка условия “X q Y” даёт значение истина

100

Верно

“Горизонтальное” подмножество данного отношения

0

Не верно


Страница: