Манипулирование+реляционными+данными


 * Манипулирование реляционными данными**

В алгебре Кодда имеется деcять операций: //объединение// (UNION), //пересечение// (INTERSECT), //вычитание// (MINUS), //взятие расширенного декартова произведения// (TIMES), //переименование атрибутов// (RENAME), //проекция// (PROJECT), //ограничение// (WHERE), //соединение// (-JOIN), //деление// (DIVIDE BY) и //присваивание//.

1) При выполнении операции //объединения// (UNION) двух отношений с одинаковыми заголовками производится отношение, включающее все кортежи, входящие хотя бы в одно из отношений-операндов.

2) Операция //пересечения// (INTERSECT) двух отношений с одинаковыми заголовками производит отношение, включающее все кортежи, входящие в оба отношения-операнда.

3) Отношение, являющееся //разностью// (MINUS) двух отношений с одинаковыми заголовками, включает все кортежи, входящие в отношение-первый операнд, такие, что ни один из них не входит в отношение, являющееся вторым операндом.

4) При выполнении //декартова произведения// (TIMES) двух отношений, пересечение заголовков которых пусто, производится отношение, кортежи которого производятся путем объединения кортежей первого и второго операндов.

5) Операция //переименования// (RENAME) производит отношение, тело которого совпадает с телом операнда, но имена атрибутов изменены; эта операция позволяет выполнять первые три операции над отношениями с «почти» совпадающими заголовками (совпадающими во всем, кроме имен атрибутов) и выполнять операцию TIMES над отношениями, пересечение заголовков которых не является пустым.

6) Результатом //ограничения// (WHERE) отношения по некоторому условию является отношение, включающее кортежи отношения-операнда, удовлетворяющее этому условию.

7) При выполнении //проекции// (PROJECT) отношения на заданное подмножество множества его атрибутов производится отношение, кортежи которого являются соответствующими подмножествами кортежей отношения-операнда.

8) При -//соединении// (-JOIN) двух отношений по некоторому условию образуется результирующее отношение, кортежи которого производятся путем объединения кортежей первого и второго отношений и удовлетворяют этому условию.

9) У операции //реляционного деления// (DIVIDE BY) два операнда – бинарное и унарное отношения. Результирующее отношение состоит из унарных кортежей, включающих значения первого атрибута кортежей первого операнда таких, что множество значений второго атрибута (при фиксированном значении первого атрибута) включает множество значений второго операнда.

10) Операция //присваивания// (:=) позволяет сохранить результат вычисления реляционного выражения в существующем отношении БД.

Понятие модели данных. Обзор разновидностей моделей данных-[Электронный ресурс]. Режим доступа: http://citforum.iubip.ru/database/data_model/2.shtml#3.1