-
Refere-se à ordem em que o otimizador os avalia (fila de junção). O otimizador pode nem estar ciente da ordem das tabelas em sua instrução sql.
-
Não, isso não contradiz o que foi escrito no nº 3, pois a resposta escreve explicitamente (a ênfase é minha):
O resultado e o desempenho são duas coisas diferentes. Na verdade, há um comentário votado na resposta dizendo que
-
Você pode dizer ao otimizador qual tabela processar primeiro usando straight_join :
No entanto, você precisa ter cuidado com isso porque você amarra a mão do otimizador. Veja este SO tópico sobre discutir vantagens e desvantagens do straight_join.
Número de registros, onde critérios, índices - todos desempenham seu papel na decisão do otimizador da ordem de processamento das tabelas. Não existe uma bala mágica, você precisa brincar um pouco e provavelmente pode enganar o otimizador para alterar a ordem das mesas.