Методы объединения

Оценить
(0 голоса)

Когда оптимизатор определяет порядок, в котором будет производиться объединение содержимого таблиц, заключительным этапом является определение методов, которые будут использованы в каждом конкретном случае. К главным методам относятся декартовы объединения, объединения вложенного цикла, объединения посредством слняния-сортировки, хэш-объединения. Используются также и новые методы объединения, включая звездообразную схему.

Декартовы объединения

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

Для иллюстрации декартова объединения на рисунке 8.3 представлены три простые таблицы: Region (Регион), Stock (В наличии) и Sales (Продажи).

При отсутствии предиката объединения оптимизатор выбирает декартово объединение для создания искомого набора. Поэтому количество строк, получившееся в результате декартова объединения, равно произведению количества строк в каждой таблице. Несмотря на то, что вышеупомянутый искомый набор не является столь важным, можно четко увидеть, что каждая строка таблицы Region соединяется с каждой строкой таблицы Stock.

Декартовы объединения обычно дороги и используются редко, лишь при отсутствии другого альтернативного варианта.

Объединения вложенного цикла
Объединения посредством слияния-сортировки
Хэш-объединения
Звездообразные объединения
Разбивка данных на разделы

Добавить комментарий


Защитный код
Обновить