[firebase-br] Left join lento

Andrei Luís compuvale.software em gmail.com
Sáb Set 11 11:06:08 -03 2010


Sem ver todo o SQL é difícil de entender, mas o  'Left join IN01LAN L
 on L.CDPRO   = LAN.CDPRO', está linkado na tabela principal, então
vai trazer a mesma info, sei lá.

Quanto a essa parte "outra boa prática é filtrar e trazer somente o
que é necessário", me referia a cláusula where, qtos registros o seu
SQL está retornando?

[]s
Andrei


Em 11 de setembro de 2010 07:55, Levy Moreira
<levymoreira.ce em gmail.com> escreveu:
> Tem dois left join no lan porque um traz a ultima vennda e os dados da
> mesma, e o outra traz a ultima compra não vejo outra forma de fazer isso..."
> outra boa prática é filtrar e trazer somente o que é
> necessário" como ?
>
> 2010/9/11 Andrei Luís <compuvale.software em gmail.com>
>
>> Levy,
>>
>> Não entendi uma coisa no seu pedaço de código, você tá fazendo left
>> join da tabela IN01LAN, mas ela já está referenciada no FROM, creio
>> que esse left join seja desnecessário e pode estar gerando mais
>> tráfego para o servidor.
>>
>> Outra coisa, você disse que a tabela IN01LAN é muito grande, além de
>> criar índices, outra boa prática é filtrar e trazer somente o que é
>> necessário, caso seja possível, é claro.
>>
>> []s
>> Andrei
>>
>>
>>
>>
>>
>> Em 10 de setembro de 2010 09:02, Levy Moreira
>> <levymoreira.ce em gmail.com> escreveu:
>> > Tenho um sql com uns 4 jins e ainda um sp:
>> >
>> > select ......
>> > From IN01LAN LAN
>> >          'Left Join IN01PRO PRO on PRO.CDPRO = LAN.CDPRO
>> >          'Left Join IN01FAT FAT on FAT.FATUR = LAN.NOTFI
>> >          'Left Join IN01CLI CLI on CLI.CDCLI = FAT.CDCLI
>> >          'Left join IN01LAN L   on L.CDPRO   = LAN.CDPRO,
>> >          'SP_GETSALDOGRADE(PRO.CDPRO, LAN.GRADE) PROC ')
>> > ..........
>> >
>> > o problema e que depois que foi adiciando o lan que é uma tabela muito
>> > grande o sql ficou lento, so vejo
>> > duas soluções ou tiro ou crio um indice no campo do lan, não posso tirar
>> > então terei de adicionar outro indice
>> >  faço errado em adicionar outro indice a um tabela que ja possui 2 idic.
>> > isso pode me prejudicar? como posso
>> > resolver isso melhor?
>> >
>> > --
>> > Levy Moreira - Sistech Informática
>> > Juzeiro do Norte - Ce
>> > ______________________________________________
>> > 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
>> >
>>
>> ______________________________________________
>> 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
>>
>
>
>
> --
> Levy Moreira - Sistech Informática
> Juzeiro do Norte - Ce
> ______________________________________________
> 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