[firebase-br] JOIN x LEFT JOIN

Carlos H. Cantu listas em warmboot.com.br
Qua Jul 21 10:27:39 -03 2010


Vc verificou os planos de cada consulta?

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

JSJ> Só para deixar claro a dúvida e que deve ser realmente algo interno do
JSJ> FB é que as tabelas tem o mesmo número de registros, ou seja não existe
JSJ> um registro da tabela 1 que não contenha um registro na tabela 2, o SQL
JSJ> seria apenas uma junção das duas tabelas, se as duas tabelas cada uma 
JSJ> tem 100 registros entao com join o FB le 100 registros porem com LEFT o
JSJ> numero de leitura da tabela1 é maior e com isso o tempo...

JSJ> Em 20/7/2010 15:25, Josauro S.J. escreveu:
>> Tenho uma dúvida que não esta fazendo sentido.....
>>
>> Na junção de 2 tabelas onde a relação de registros é 1 x 1, se uso 
>> Left Join é muito mais demorado e o volume de registros lidos tambem é 
>> maior do que se usar apenas Join, não deveria ser no máximo igual pois 
>> se é 1 x 1 qual a diferença, apenas se for algo do FB como trata essa 
>> questão
>>
>> SELECT CAMPOS
>> FROM TABELA1
>> LEFT JOIN TABELA2 ON (TABELA1.CAMPO  = TABELA2.CODIGO)
>>
>> (* Lento e le muito mais registro TABELA1 (pelo log do ibexpert).
>>
>>
>> SELECT CAMPOS
>> FROM TABELA1
>> JOIN TABELA 2 ON (TABELA1.CAMPO  = TABELA2.CODIGO)
>>
>> (* Rápido e le muito menos registro TABELA1 (pelo log do ibexpert).
>>
>> O número de registros retornados é igual em ambos os casos, somente a 
>> estatistica de leitura, que ocorre na tabela1 é maior com LEFT).
>>
>>

JSJ> ______________________________________________
JSJ> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
JSJ> Para saber como gerenciar/excluir seu cadastro na lista, use:
JSJ> http://www.firebase.com.br/fb/artigo.php?id=1107
JSJ> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista