Forçando a utilização de índices

Olá pessoal,
Em certos casos no SQL Server, precisamos forçar a utilização de índices nas tabelas para verificar se os mesmos estão adequados, diminuindo o tempo de resposta nas consultas. Para fazer isto, verifique o seguinte SELECT:
 
SELECT COD, NOME, ENDERECO
FROM CADASTRO WITH(INDEX = INDICE_COD)
WHERE COD BETWEEN 1 AND 1000
 
Observe o código em negrito, ele está especificando a utilização do índice INDICE_COD que foi criado anteriormente. De qualquer forma, o ideal é não forçar a utilização de índices, deixando que o próprio otimizador de consultas do SQL Server escolha a melhor alternativa.
 
Até mais,
Douglas Mello. 
 
Anúncios
Esse post foi publicado em Uncategorized. Bookmark o link permanente.

3 respostas para Forçando a utilização de índices

  1. Pingback: Forçando a utilização de índices no SQL Server « Alex Souza

  2. Olá Douglas, tenho uma stored procedure, no qual após criação de um índice e forçar a utilização do mesmo, o sql reduziu quase pela metade o tempo e em muito o custo de IO,
    Será que nesse caso é por causa da quantidade de índices em uma das tabelas, que fez o MSSQL não saber qual melhor índice utilizar?

  3. dnmello disse:

    Olá Leonardo, pode ser sim! Outro teste que vc poderia fazer é actualizar as estatísicas do banco para ver se após ele pega o índice correto.

    Boa Sorte!
    Douglas Mello.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s