Oi Elis, segui a sua sugestão. e o custo diminuiu, caiu de 208456 para 2253.

Vou ver com os analistas se essa mudança atrapalha a regra de negócio.

Márcio.
  ----- Original Message ----- 
  From: Elis Azevedo Nery 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Tuesday, September 15, 2009 8:33 AM
  Subject: Re: [oracle_br] FULL TABLE..


    Olá Márcio!

  A cabeça do seu indice é ano, e me pareceu que você não está a passar o ano.
  Verifica se ao colocar este campo no where já usa o indice.

  Inté!
  Elis

  --- Em ter, 15/9/09, Márcio Ricardo Alves da Silva <marcio_...@yahoo.com.br> 
escreveu:

  De: Márcio Ricardo Alves da Silva <marcio_...@yahoo.com.br>
  Assunto: [oracle_br] FULL TABLE..
  Para: oracle_br@yahoogrupos.com.br, gpora...@yahoogrupos.com.br
  Data: Terça-feira, 15 de Setembro de 2009, 12:19

   

  Bom dia!

  Tenho um select que está fazendo FULL TABLE, e a tabela que está fazendo FULL 
TABLE tem 50 milhões de registros, o select é esse:

  select ht01.un,

  ht01.periodo_ mov as dt_mov,

  sum(nvl(ht01. vr_ap, 0)) as vr_ap,

  sum(nvl(ht01. vr_av, 0)) as vr_av

  from ht01_hist_venda ht01

  where (:5 is null or ht01.un = :6)

  and ht01.periodo_ mov between :7 and :8

  and ht01.tipo = 4

  group by ht01.un

  ,ht01.periodo_ mov

  E tem esse indice criado na tabela.

  ANO, TIPO, PERIODO_MOV, UN, REGIONAL, REGIAO, EQUIPE. ROTA, CLIENTE, PROD

  Forcei o indice com o hint, e o custo dobrou. Onde tem a numeração, são as 
bind variables, acho que o problema é bind :5 is null.

  Alguém tem alguma dica?

  Grato.

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











  __________________________________________________________
  Veja quais são os assuntos do momento no Yahoo! +Buscados
  http://br.maisbuscados.yahoo.com

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



  

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

Responder a