Foi instalado em Desenvolvimento e Implantação (homologação)




De:     Marcelo Cauduro <mcaud...@gmail.com>
Para:   oracle_br@yahoogrupos.com.br
Data:   15/04/2010 14:35
Assunto:        Re: [oracle_br] Oracle Hint
Enviado por:    oracle_br@yahoogrupos.com.br



 
Complementando o que o amigo Raul disse, a sua sintaxe esta errada, ou 
seja,
o Oracle desconsidera esse HINT, para ele é apenas um comentario... e 
sendo
que você tem histogramas coletados, ele escolhe o uso de indice de acordo
com o caso, por isso a situação muda de acordo com o valor do
cd_situacao_arquivo... não tem nada a ver com o hint, que no seu caso nao
existe...

para forcar o uso de indice sempre nessa querie, apenas mude a sua sintaxe 
,
naum existe o hint INDEX_RS, mas sim INDEX

2010/4/15 Raul Francisco Costa F. de Andrade, DBA <raulf...@gmail.com>

> Caro amigo
> A tabela citada deve ter histogramas coletados provavelmente, sendo 
assim o
> número 1 deve ter poucas vezes na tabela, já o número 3 deve ter mais.
>
> Sendo assim, através do histograma o otimizador acredita ser melhor (e
> provavelmente será) ler a tabela toda ao invés de utilizar o índice.
> A sintaxe da sua hint está meio estranha também!
>
> tente fazer:
>
>
> select /*+ index(owner.tabela index_name) */ from owner.tabela;
>
>
>
>
>
>
>
> Em 15 de abril de 2010 13:54, Eduardo <eduardo.pa...@gmail.com> 
escreveu:
>
> >
> >
> > Senhores,
> >
> > eu tenho um select que possui 2 custos mudando um parametro no where:
> >
> > Gostaria de saber porque ele está usando o index somente quando o
> > cd_situacao_arquivo é 1, já tentei usar o hint para ele usar o indice
> > mas ele teima em fazer full table scan.
> > Tem solução isso?
> >
> >
> >
> 
#######################################################################################################
> >
> > set autotrace traceonly explain;
> >
> > SELECT /* +INDEX_rs IX_FK_ARQ_DIV_SIT_ARQ */ ad.sg_ue, ad.cd_arquivo
> > FROM arquivo_divulgacao ad
> > WHERE ad.cd_situacao_arquivo = 3;
> >
> > ----------------------------------------------------------
> > Execution Plan
> > ----------------------------------------------------------
> > SELECT STATEMENT Optimizer Mode=ALL_ROWS (Cost=11 Card=4 K
> > Bytes=104 K)
> > 1 PARTITION LIST SINGLE (Cost=11 Card=4 K Bytes=104 K)
> > 2 1 TABLE ACCESS FULL ADMELEGERAL.ARQUIVO_DIVULGACAO
> > (Cost=11 Card=4 K Bytes=104 K)
> >
> >
> >
> 
#######################################################################################################
> >
> > set autotrace traceonly explain;
> >
> > SELECT /* +INDEX_rs IX_FK_ARQ_DIV_SIT_ARQ */ ad.sg_ue, ad.cd_arquivo
> > FROM arquivo_divulgacao ad
> > WHERE ad.cd_situacao_arquivo = 1;
> >
> > Execution Plan
> > ----------------------------------------------------------
> > SELECT STATEMENT Optimizer Mode=ALL_ROWS (Cost=2 Card=1 Bytes=22)
> > 1 TABLE ACCESS BY GLOBAL INDEX ROWID
> > ADMELEGERAL.ARQUIVO_DIVULGACAO (Cost=2 Card=1 Bytes=22)
> > 2 1 INDEX RANGE SCAN ADMELEGERAL.IX_FK_ARQ_DIV_SIT_ARQ
> > (Cost=1 Card=1)
> >
> > --
> > ----------
> >
> > Eduardo
> >
> >
>
>
>
> --
> ----------------------------------------------------------
> Raul Francisco da Costa Ferreira de Andrade
> DBA - OCA - Oracle Certified Associate
> COBIT Foundation 4.1
> Fone: (41)8855-8874 Brt
> email: raulf...@gmail.com
> Skype: raul.andrade
> www.clickdba.com
> "Não somos seres humanos passando por uma experiência espiritual
> Somos seres espirituais passando por uma experiência humana."
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ------------------------------------
>
>
> ----------------------------------------------------------
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
>
> ----------------------------------------------------------
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » 
Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! 
VISITE:
> http://www.oraclebr.com.br/
> ----------------------------------------------------------
> Links do Yahoo! Grupos
>
>
>

[As partes desta mensagem que não continham texto foram removidas]






AVISO 
Esta mensagem é destinada exclusivamente a(s) pessoa(s) indicada(s) como 
destinatário(s), podendo conter informações confidenciais, protegidas por lei. 
A transmissão incorreta da mensagem não acarreta a perda de sua 
confidencialidade. Caso esta mensagem tenha sido recebida por engano, 
solicitamos que seja devolvida ao remetente e apagada imediatamente de seu 
sistema. É vedado a qualquer pessoa que não seja destinatário, usar, revelar, 
distribuir ou copiar ainda que parcialmente esta mensagem. 
-----------------------------------------------------------------------------------------------------------------
 
DISCLAIMER 
This message is destined exclusively to the intended receiver. It may contain 
confidential or legally protected information. The incorrect transmission of 
this message does not mean loss of its confidentiality. If this message is 
received by mistake, please send it back to the sender and delete it from your 
system immediately. It is forbidden to any person who is not the intended 
receiver to use, reveal, distribute, or copy any part of this message.  

[As partes desta mensagem que não continham texto foram removidas]

Reply via email to