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

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск

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

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

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

Пример:

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

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

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

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

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

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

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

См. также

cs:JOIN

en:Join (SQL) es:Join fr:Jointure (informatique) it:Join (SQL) no:Join (SQL) uk:Об'єднання (SQL) vi:Join (SQL) zh:连接 (SQL)

Личные инструменты

Served in 0.173 secs.