-
Týká se pořadí, ve kterém je optimalizátor vyhodnocuje (připojit se do fronty). Optimalizátor si ani nemusí být vědom pořadí tabulek ve vašem příkazu SQL.
-
Ne, není to v rozporu s tím, co je napsáno v #3, protože odpověď výslovně píše (důraz je můj):
Výsledek a výkon jsou dvě různé věci. Ve skutečnosti je k odpovědi kladný komentář, který říká, že
-
Optimalizátoru můžete sdělit, kterou tabulku zpracovat jako první, pomocí straight_join :
Na to však musíte být opatrní, protože optimalizátorovi svážete ruku. Viz toto SO téma o výhodách a nevýhodách straight_join.
Počet záznamů, kde kritéria, indexy - to vše hraje roli při rozhodování optimalizátoru o pořadí zpracování tabulek. Neexistuje žádná kouzelná kulka, musíte si trochu pohrát a pravděpodobně dokážete oklamat optimalizátora, aby změnil pořadí stolů.