Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como verificar se o índice está sendo usado ou não no Oracle


No Oracle SQL Developer, quando você tem SQL na planilha, existe um botão "Explicar Plano", você também pode apertar F10. Depois de executar o plano Explain, ele será exibido na visualização inferior do SQL Developer. Existe uma coluna "OBJECT_NAME", ela informará qual índice está sendo usado. Por exemplo, em uma consulta que acabei de executar, na coluna da esquerda (OPERATION) mostra primeiro "SELECT STATEMENT", depois SORT (AGGREGATE) e depois INDEX (RANGE SCAN) e depois na coluna OBJECT_NAME mostra TICKER_IDX1, que é o nome de um índice na minha tabela.

Assim, você pode ver na coluna OBJECT_NAME quais índices estão sendo usados.

Pode acontecer que o Oracle Cost Based Optimizer escolha um plano de execução abaixo do ideal. Muitas vezes, atualizar as estatísticas resolverá o problema. Outras opções são adicionar índices adicionais, em outras palavras, um índice de várias colunas. Você pode sugerir uma instrução SQL, mas isso raramente é necessário. Além disso, é possível reescrever a consulta.