[firebase-br] set plan???
Arlei Ferreira Farnetani Junior
junior em farsoft.com.br
Sáb Ago 16 12:53:55 -03 2008
Douglas, valew pelas dicas...
Aconteceu uma coisa mto estranha aqui...
Só de eu desligar a maquina e reiniciar a mesma
a mesma consulta que levava 15s agora passou
a levar 2,5s...
Gostaria de saber como é q eu analiso
a seletividade que vc disse e como eu
faço para jogar no SQL o plan forçadamente (qual é a sintaxe).
"FK_ORCAMENTOS_7 é um índice em que campo? Qual a seletividade dele?"
é um indice para a tabela cfop_vinculo (is_cfopvinculo)...como vejo
a seletividade...
Valew!
----- Original Message -----
From: "Douglas Tosi" <douglasht em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Saturday, August 16, 2008 12:29 PM
Subject: Re: [firebase-br] set plan???
2008/8/16 Arlei Ferreira Farnetani Junior <junior em farsoft.com.br>:
> Na verdade é uma store procedure de apuração de
> itens vendidos totalizando mes a mes no ano todo para
> apuração da média de necessidade de compra (estoque mínimo).
Algumas dicas genéricas:
- Dê nomes significativos para seus índices e constraints. É muito
difícil ler CFOP_VINCULO_IDX3 e imaginar o que significa.
CFOP_VINCULO_TIPO_OP seria muito mais legível porque inclui o nome do
campo indexado.
- Usar sintaxe join SQL-89 é pouco recomendado (ex. from tabelaA,
tabelaB, tabelaC). Use a sintaxe SQL-92. Além de mais legível, se não
me engano é o preferido pelo otimizador do Firebird.
Ex.:
from orcamentos o,
join orcamentos_itens oi on oi.is_orcamento = o.id_orcamento
where
o.is_filial=:vis_filial
and not o.status='C'
Sobre o primeiro sql da sua procedure:
Qual a seletividade do índice CFOP_VINCULO_IDX3? Se for maior que 0,2
ele está te ajudando muito pouco nesta procedure específica. Tente sem
ele, mas fique atento: tirá-lo pode desbalancear outros sqls onde ele
"pode" estar ajudando.
FK_ORCAMENTOS_7 é um índice em que campo? Qual a seletividade dele?
hth,
[]s
--
Douglas Tosi
www.sinatica.com
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista