Давно go Мне однажды говорили во время курса SQL, что порядок JOIN в предложении FROM запроса может повлиять на производительность запроса. Так, например, если бы у меня было следующее
SELECT * FROM
TABLE_1 INNER JOIN --5000 rows
TABLE_2 ON TABLE_1.COL1=TABLE_2.COL1 INNER JOIN --200 rows
TABLE_3 ON TABLE_2.COL1=TABLE_3.COL1--50 rows
.....
Это должно быть переупорядочено следующим образом
SELECT * FROM
TABLE_3 INNER JOIN --50 rows
TABLE_2 ON TABLE_2.COL1=TABLE_3.COL1 INNER JOIN --200 rows
TABLE_1 ON TABLE_1.COL1=TABLE_2.COL1 --5000 rows
.....
Таким образом, таблица ведущих / ведущих является наименьшим количеством строк первой (гипотетически). Я читал, что, если HINT не используется для форсирования заказа, оптимизатор на основе затрат в Oracle просто переставит JOIN так, как считает нужным.
Просто любопытно, имеет ли значение порядок JOIN без использования HINTS в выражении SQL?