[firebase-br] Join explicito x Implicito

Eduardo Jedliczka eduardo em gerasoftinfo.com.br
Seg Dez 6 13:09:26 -03 2004


A questão de Left Join não tem nada a ver com ser explícito ou implícito...

O Oracle também tem diferença de performance caso você monte os Left Joins
antes dos Inner Joins.

Mas reavalie suas querys, vai perceber que dependendo da ordem das tabelas
(e naturalmente dos seus filtros) o tempo de resposta do servidor pode mudar
muito.

Há aquela regra de ouro válida para quase todos os bancos... Primeiro as
tabelas menores (seja na prática ou no filtro pela sua PK), depois as
maiores e por último os Left Joins.

[s]

=====================
Eduardo Jedliczka
GeraSoft Informática
Apucarana - PR
=====================
----- Original Message ----- 
From: "Cesar - ASSEINFO.com" <cesar em asseinfo.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, December 06, 2004 12:38 PM
Subject: Re: [firebase-br] Join explicito x Implicito


> Eduardo.... em muitas experiências que nós fizemos aqui na empresa... nós
> pudemos observar que quando vc faz join's implícitos e utiliza left join's
> junto... o otimizar acaba se perdendo na escolha dos índices na montagem
dos
> planos.
>
> Notamos tb que se vc fizer uma query com join's explícitos onde tenha left
> join e esse left join venha antes do join... o otimizar tb se perde nas
> escolhas dos índices no plano montado.
>
> Agora... se vc fizer uma query com join's explícitos e left join (nesta
> ordem) ele monta um plano perfeito.
>
> Essas experiências foram feitas utilizando o FB1.03... não sei quanto ao
FB
> 1.5... e fizemos isso em muitas query's...
>
> Por isso optamos pr escrever as querys sempre com join explícito e se
> necessário... seguido por left join.
>
> É isso aí....
>
> Sds.,
>
> Cezinha.
>
>
>
>
>
> ----- Original Message ----- 
> From: "Eduardo Jedliczka" <eduardo em gerasoftinfo.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Monday, December 06, 2004 8:53 AM
> Subject: Re: [firebase-br] Join explicito x Implicito
>
>
> > Marcio, Join Implícito e Explícito possuem o mesmo desempenho em quase
> todos
> > os casos...
> >
> > Como o join explícito é mais claro, podemos "facilitar" o serviço do
> > otimizador do banco, pois vez ou outra esquecemos de fazer certos
filtros
> > num join implícito, ou primeiro causar um produto cartesiano para depois
> > filtrar, que pode resultar em "mais trabalho" para o banco por isto,
> quando
> > há degradação de performance,a culpa não é do banco, mas nossa!!!
> >
> > [s]
> >
> > =====================
> > Eduardo Jedliczka
> > GeraSoft Informática
> > Apucarana - PR
> > =====================
> > ----- Original Message ----- 
> > From: "Marcio Morais" <otherpan em yahoo.com.br>
> > To: "FireBase" <lista em firebase.com.br>
> > Sent: Monday, December 06, 2004 8:56 AM
> > Subject: [firebase-br] Join explicito x Implicito
> >
> >
> > > Olá a todos da lista:
> > >
> > > Uma simples duvida, ouvi dizer que um join implicito implica em uma
> > > menor performance em relação a um explicito!
> > > Isso procede?
> > >
> > > []'s
> > > Marcio Morais
> > >
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> > > Para editar sua configuração na lista, use o endereço
> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > >
> >
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> > Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>





Mais detalhes sobre a lista de discussão lista