Hola buenos dias:
Eso va un poco a decision del programador, yo en un principio , la tabla a la que primero accedes es la ultima que pones en la clausula from y partir de ahi vas poniendo tablas conforme vas accediendo hacia arriva ) y en el where al reves, el campo de la tabla que primero accedes es la que pones primero, lo único que cabe reseñar, que en el caso que utilices algun hint especial, ya sea +rule, o el +use_hash o el +use_index (sobre todos este ultimo) el orden en que pongas las tablas y las codiciones le va dar igual y va a tirar por lo que tu le pongas en hint (siempre y cuando este biene especificado)
En cuanto para que te coja los indices, si tu estas poniendo bien los campos del indice en la clausula where debe pillartelos bien, en el caso contrario o esta entrando por otro indice que no es bueno u oracle esta considerando que no es optimo entrar por indices y prefiere entrar directamente por la tabla( en esto oracle se le va la pinza y tienes que forzarlo con un hint)
Espero haberte ayudado