Svar på din fråga - Ja, ordningen på bordet gör skillnad i gå med.
Du kan också meddela optimeraren om exekveringsplanen.
ORDERED-tipset får Oracle att sammanfoga tabeller i den ordning som de visas i FROM-satsen.
Till exempel kopplar denna sats tabell TAB1 till tabell TAB2 och sedan sammanfogar resultatet till tabell TAB3:
SELECT /*+ ORDERED */ TAB1.COL1, TAB2.COL2, TAB3.COL3
FROM TAB1, TAB2, TAB3
WHERE TAB1.COL1 = TAB2.COL1
AND TAB2.COL1 = TAB3.COL1;
Om du utelämnar ORDERED-tipset från en SQL-sats som utför en join, väljer optimeraren i vilken ordning tabellerna ska sammanfogas. Du kanske vill använda ORDERED-tipset för att ange en sammanfogningsordning om du vet något om antalet rader valda från varje tabell som optimeraren inte har. Sådan information skulle göra det möjligt för dig att välja ett inre och ett yttre bord bättre än vad optimeraren kunde.
Vanligtvis, om du analyserar tabellerna, väljer optimeraren en effektiv stjärnplan. Du kan också använda tips för att förbättra planen. Den mest exakta metoden är att ordna tabellerna i FROM-satsen i ordningen för nycklarna i indexet, med den stora tabellen sist. Använd sedan följande tips:
/*+ ORDERED USE_NL(FACTS) INDEX(FACTS FACT_CONCAT) */