Pular para o conteúdo

Fóruns SQL e PL/SQL Campo no select impede uso de índice, porque ? Campo no select impede uso de índice, porque ?

#87982
apovoa
Participante

    A função da consulta é trazer alguns campos da tabela pessoa, que tenha vínculos que ainda não foram importados.
    Ou seja, a restrição é na tabela vínculo, e da tabela pessoa a restrição é esta pessoa estar neste conjunto de registros selecionados da tabela vínculo.
    Se eu forçar o uso do índice (PK) da tabela pessoa, a resposta é instantânea, porém eu gostaria de entender porquê o oracle não usa este índice por conta própria.
    O uso de várias sub-consultas na query também faz usar o índice, mas não sei se isto é uma boa prática.
    Não tenha acesso físico ao servidor, porém tenho privilégios de DBA, gostaria de aproveitar para saber como apagar e refazer as estatísticas usando DBMS_STATS, a versão é 10g.