Re: [firebase-br] Extrema Lentidão em Consulta Firebi rd 5

Luciano franca via lista <[email protected]> Fri, 16 May 2025 20:39:17 +0000 (UTC)
Newsgroups gmane.comp.db.firebase.portuguese
Message-ID <[email protected]>
 Eu Fiz apenas um exemplo basico onde dois "LEFT Join" causam extrema lentidão no Firebird meu SQL completo.
Veja esse topico para entender melhor

https://github.com/FirebirdSQL/firebird/issues/8568





    Em sexta-feira, 16 de maio de 2025 às 15:48:49 BRT, Rodrigo Gomes da Silva <[email protected]> escreveu:  
 
 SELECT
CM.Codigo,
CM.MERCADORIA,
Sum(E.quant) As Saldo,
AVG(E2.preco_custo) As Preco
FROM CADASTRO_MERCADORIAS CM
left Join ESTOQUE E ON (E.Cod_Mercadoria = CM.codigo)
left Join ESTOQUE E2 ON ( E2.Cod_Mercadoria = CM.Codigo )
Group By 1, 2

Você quer o preço medio e a quantidade, por que esta fazendo 2 joins para o mesmo filtro? Os registros são multiplicados.

SELECT
CM.Codigo,
CM.MERCADORIA,
Sum(E.quant) As Saldo,
AVG(E.preco_custo) As Preco
FROM CADASTRO_MERCADORIAS CM
left Join ESTOQUE E ON (E.Cod_Mercadoria = CM.codigo)
Group By 1, 2

Aparentemente bastaria fazer isso.  
______________________________________________
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://www.firebase.com.br/pesquisa_lista.html