Алгоритм соединения (СУБД)

Алгоритм соединения (СУБД)

Целью алгоритма соеднинения является реализация в конкретной СУБД операции соединения реляционной алгебры.

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

Пример:

Имеется 2 таблицы: Служащий и Отдел. Задано условие соединения: «Служащий.[ИД отдела]=Отдел.[ИД отдела]»

таблица «Служащий»
Фамилия ИД Отдела
Иванов 34
Петров 36
Сидоров 34
Сергеев 34
таблица «Отдел»
Название ИД Отдела
Бухгалтерия 34
Маркетинг 36

Результатом операции соединения будет:

таблица «Результат соединения»
Фамилия ИД Отдела Отдел ИД Отдела
Иванов 34 Бухгалтерия 34
Петров 36 Маркетинг 36
Сидоров 34 Бухгалтерия 34
Сергеев 34 Бухгалтерия 34

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

Понимание особенностей алгоритмов соединения важно при анализе и оптимизации планов выполнения запросов СУБД

Алгоритмы соединения имеют ценность не только в контексте СУБД, но и практически в любых ситуациях, когда необходимо комбинировать данные содержащиеся в нескольких коллекциях\списках.

См. также

СУБД

Концепции (Edgar Codd, Christopher Date, ...)
База данных | Database model | Реляционные базы данных | Реляционная модель данных | Реляционная алгебра | Первичный ключ - Внешний ключ - Суррогатный ключ - Superkey
Нормальная форма | Ссылочная целостность | Реляционные СУБД | Распределённые СУБД | ACID

Объекты
Триггер (Trigger) | Представление (View) | Таблица (Table) | Курсор (Cursor) | Лог транзакций | Транзакция | Индекс | Хранимая процедура | Partition

SQL (DCL, DDL, DML)
SELECT | INSERT | UPDATE | MERGE | DELETE | JOIN | UNION | CREATE | ALTER | DROP
Сравнение синтаксисов

Реализации систем управления базами данных

Типы реализаций
Flat file | Deductive | Dimensional | Иерархическая | Объектно-ориентированная | Temporal


Свободные системы
Firebird | Ingres | Kexi | MySQL | SQLite

Компоненты
Язык запросов | Оптимизатор запросов | План выполнения запроса | ODBC | JDBC

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home