Естественно объединить 3 отношения, какой порядок дает лучшую производительность?
Для его процесса оптимизации: объединяется ли оно с отношением, которое имеет больший результат, или то, которое имеет меньший результат?
1 ответ
Это слишком долго для комментария.
Первый. Не использовать NATURAL JOIN
, Это ошибка, ожидающая своего появления. NATURAL JOIN
использует поля, которые имеют одинаковое имя для JOIN
ключи. Он даже не принимает во внимание объявленные отношения внешнего ключа.
Вы можете написать запрос сегодня, и небольшие изменения в базовой таблице могут полностью сломать запрос (я допускаю, что это может происходить и другими способами). Однако, огорчает то, что логика не видна в запросе. Так что используйте USING
или же ON
вместо.
Во-вторых, большинство баз данных имеют фазу оптимизации. Этот этап определяет лучший заказ для обработки. Таким образом, даже изменение порядка не имеет эффекта - потому что механизм базы данных принимает решение о порядке (если вы не переопределите его с помощью подсказки).