Основные join methods — вложенные циклы, хеш-соединение и слияние отсортированных потоков. Оптимизатор выбирает их по стоимости для конкретного запроса.
Какие бывают физические соединения (join methods)?
Основные join methods — вложенные циклы, хеш-соединение и слияние отсортированных потоков. Оптимизатор выбирает их по стоимости для конкретного запроса.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Основные join methods — вложенные циклы, хеш-соединение и слияние отсортированных потоков. Оптимизатор выбирает их по стоимости для конкретного запроса.
Вложенные циклы полезны для небольшого внешнего набора и быстрого поиска во внутреннем. Хеш-соединение хорошо работает для равенства ключей, если структура помещается в память либо поддерживается работа с диском.
Merge join использует порядок входных данных; необходимость предварительной сортировки может изменить его стоимость. INNER и LEFT описывают результат, а не физический алгоритм. Проверяйте план, реальные количества строк и ошибки оценок.