[firebase-br] Escolha entre Sub-Selects ou Joins.

Rubens J Rodrigues rubens.rodrigues em abrevo.com.br
Qui Mar 1 16:37:08 -03 2007


Pessoal,

Sei que cada caso é um caso, e que mais ainda tudo depende do resultado 
dos testes feitos, mas, tenho uma dúvida :

Qual seria o melhor método, usar subselects ou joins ? ex.:

  1) Se eu faço um select na tabela de clientes, e precisar buscar em 
qual regiao de ele pertence, quanto ele já comprou, quanto já foi 
bonificado.

  a) Com sub-select :
     select  clientes.codigo,
             clientes.nome,
             (select nomeregiao from regioes where 
regioes.codregiao=clientes.codigo),
             (select coalesce(sum(notafsaid.vlatend),0) from notafsaid 
where notafsaid.codcli=clientes.codigo where tipovenda=1),
             (select coalesce(sum(notafsaid.vlatend),0) from notafsaid 
where notafsaid.codcli=clientes.codigo where tipovenda=5)

     from
             clientes.


  b) Com Join
     select  clientes.codigo,
             clientes.nome,
             regioes.nomeregiao,
             (select coalesce(sum(notafsaid.vlatend),0) from notafsaid 
where notafsaid.codcli=clientes.codigo where tipovenda=1),
             (select coalesce(sum(notafsaid.vlatend),0) from notafsaid 
where notafsaid.codcli=clientes.codigo where tipovenda=5)

     from
             clientes
             left outer join regioes on 
clientes.codregiao=regiores.codregiao.

Obrigado






Mais detalhes sobre a lista de discussão lista