Реляционная алгебра
19.09.2024
Реляционная алгебра
Основные понятия
Реляционная алгебра — формальная система манипулирования отношениями в реляционной модели данных.
Основные авторы: Т. Кодд, А. К. Дейт, Х. Дарвен
Замкнутость реляционной алгебры
Все операции над отношениями приводят к результатам, которые также являются отношениями.
Традиционные операции над множествами
Объединение:
Пересечение:
Разность:
Декартово произведение:
Совместимость отношений по типу
Отношения совместимы, если имеют одинаковые атрибуты и типы данных. Для приведения к одному типу используют операцию переименования.
Операции реляционной алгебры
Выборка Фильтрация кортежей по заданному условию.
Проекция Извлечение указанных атрибутов.
Естественное соединение Соединение по одинаковым атрибутам.
Θ-соединение Соединение по произвольному условию.
Деление Извлечение всех элементов из , связанных со всеми элементами из .
Примитивные операции
Выборка, проекция, произведение, объединение, вычитание, переименование.
Пример
Запрос: Получить имена поставщиков, которые поставляют деталь с кодом P2:
Результат:
Примеры задач по реляционной алгебре
1. Лёгкая задача
Задача:
Есть таблица Студенты
:
1
Анна
A1
2
Борис
A2
3
Виктор
A1
Нужно выбрать всех студентов из группы A1.
Решение:
Ответ:
1
Анна
A1
3
Виктор
A1
2. Средняя задача
Задача:
Даны две таблицы:
Продукты
:
1
Яблоко
100
2
Банан
150
3
Апельсин
200
Магазины
:
1
1
Магазин1
2
2
Магазин2
3
3
Магазин3
4
1
Магазин3
Нужно выбрать все магазины, где продаются продукты дешевле 150.
Решение:
Ответ:
1
1
Магазин1
4
1
Магазин3
3. Средняя задача
Задача:
Даны таблицы:
Книги
:
1
Книга1
Иванов
2
Книга2
Петров
3
Книга3
Сидоров
Продажи
:
1
1
Магазин1
2
2
Магазин2
3
3
Магазин1
Нужно получить имена авторов, чьи книги продаются в Магазин1.
Решение:
Ответ:
Иванов
Сидоров
4. Сложная задача
Задача:
Есть две таблицы:
Сотрудники
:
1
Иван
IT
2
Ольга
HR
3
Сергей
IT
4
Анна
HR
Задачи
:
1
1
Важная
2
2
Обычная
3
3
Важная
4
4
Важная
Нужно найти имена сотрудников отдела IT, у которых есть важные задачи.
Решение:
Ответ:
Иван
Сергей
Last updated