[firebase-br] JOIN x LEFT JOIN

Carlos H. Cantu listas em warmboot.com.br
Ter Jul 20 15:54:07 -03 2010


Compare o plano das duas pesquisas.

[]s
Carlos H. Cantu
www.FireBase.com.br - www.firebirdnews.org
www.warmboot.com.br - blog.firebase.com.br

JSJ> Tenho uma dúvida que não esta fazendo sentido.....

JSJ> Na junção de 2 tabelas onde a relação de registros é 1 x 1, se uso Left
JSJ> Join é muito mais demorado e o volume de registros lidos tambem é maior
JSJ> do que se usar apenas Join, não deveria ser no máximo igual pois se é 1
JSJ> x 1 qual a diferença, apenas se for algo do FB como trata essa questão

JSJ> SELECT CAMPOS
JSJ> FROM TABELA1
JSJ> LEFT JOIN TABELA2 ON (TABELA1.CAMPO  = TABELA2.CODIGO)

JSJ> (* Lento e le muito mais registro TABELA1 (pelo log do ibexpert).


JSJ> SELECT CAMPOS
JSJ> FROM TABELA1
JSJ> JOIN TABELA 2 ON (TABELA1.CAMPO  = TABELA2.CODIGO)

JSJ> (* Rápido e le muito menos registro TABELA1 (pelo log do ibexpert).

JSJ> O número de registros retornados é igual em ambos os casos, somente a 
JSJ> estatistica de leitura, que ocorre na tabela1 é maior com LEFT).





Mais detalhes sobre a lista de discussão lista