Pular para o conteúdo
  • Este tópico contém 2 respostas, 3 vozes e foi atualizado pela última vez 10 anos, 5 meses atrás por Avatar de Fábio PradoFábio Prado.
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #106697
    Avatar de Felipe da RosaFelipe da Rosa
    Participante

      Olá Pessoal, Blz?

      Tenho uma tabela com uma PK composta com 5 campos. Automaticamente eles serão um índice certo? Só q tenho uma consulta que vou usar muito que vai pegar apenas 3 campos dessa tabela. Preciso criar um índice para estes 3 campos ou o da PK já me serve?

      #106698
      Avatar de rmanrman
      Participante

        @Felipe da Rosa

        Existe a possibilidade do Oracle utilizar esse INDEX composto, mas só analisando o plano de execução para ter certeza.

        Segue um artigo que mostra como analisar o plano:

        http://www.fabioprado.net/2011/03/analisando-o-plano-de-execucao-para.html

        #106699
        Avatar de Fábio PradoFábio Prado
        Participante

          Felipe,

          É possível sim criar um índice composto e apenas parte dele ser usado pelo otimizador. Qdo isso ocorre vc verá no plano de execução uma operação chamada “Index Skip Scan”. É importante ressaltar, inclusive, que ao usar sequencialmente as primeiras colunas do índice, a eficiência dele será a mesma do que a de outro índice em que todas as colunas sejam utilizadas no Scan. Em qq outra situação ele será menos eficiente!
          Este assunto é complexo… normalmente respondo muitas dúvidas sobre isso nos treinamentos de SQL Tuning.

          []s

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.
        plugins premium WordPress