[firebase-br] Procedure demorada - Where + Order by
Cleber
cleber em agrosoftrs.com.br
Ter Dez 16 10:45:10 -03 2008
veja se você tem o campo oi_codforn no indice, senão crie um indice com os
campos ou tente tirar o where e passe esse parametro do in em um varchar, e
na procedure use um execute statement
----- Original Message -----
From: "Felipe Aron" <felipearon em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, December 16, 2008 10:26 AM
Subject: Re: [firebase-br] Procedure demorada - Where + Order by
Vamos lá:
1) Estou usando Fb 1.5, portanto não há tabelas temporárias...
Se não usar o where a procedure executa em 62ms ... com Where vai para 960ms
e com order by vai para 3s .... isso localmente...
agora pela rede ai a coisa fica demorada mesmo...
O que significa: "Passar uma string e montar as queries da procedure com
execute statement" ??
2008/12/16 Adriano dos Santos Fernandes <adrianosf em uol.com.br>
> Felipe Aron escreveu:
>
>> Pessoal estou com uma problemão:
>>
>> Tenho uma procedure que serve como base para um relatório.
>> Porém além dos parametros que eu passo para ela eu ainda tenho de usar
>> uma
>> consição Where e Order By na select da procedure:
>>
>> select rel_controleestoque.*
>> from rel_controleestoque('11/24/2008', '11/27/2008', 30, 0)
>> where rel_controleestoque.oi_codforn in (5238)
>> order by rel_controleestoque.oi_codprod
>>
>> Sem a condição where vai super rápido....
>>
>
> Estranho, isso não deveria acontecer. Mas quanto tempo seria "super
> rápido"
> e não-"super rápido"?
>
> Qual a versão do FB? Quais os planos de execução com e sem o WHERE?
>
> há alguma opção para enviar como
>> parametro um array na procedure ??
>>
>> Você tem duas opções:
>
> 1) Passar uma string e montar as queries da procedure com execute
> statement
> 2) Cria uma tabela temporária com colunas (id [use generator], valor),
> insira os valores na tabela com um ID só. Passe o ID para a procedure. Na
> procedure, faça um join com a tabela temporária.
>
>
> Adriano
>
> ______________________________________________
> 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
>
--
Com a força aprenda a suavidade. Através da suavidade a força prevalecerá!
http://www.felipearon.net
http://br.groups.yahoo.com/group/xna-br/
______________________________________________
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