Olá pessoal,

Me deparei com uma dúvida, qual eh a melhor maneira de se escrever 
uma query????

tem um pessoal da minha equipe q só utiliza join , left join ou right 
join, outra equipe define as condições na clausula where, utilizando 
subselect, a igualdade entre os campos chaves e os (+).

Todo manual ou livro que encontrei, não fala, nem menciona a 
utilização dos join, ja cheguei a ver estes comandos no ACCESS, 
inclusive tive que troca-los pelas selects tradicionais, pois com o 
Access acessando o Oracle a consulta fica muito pesada.


vai um exemplo
SELECT  
Eo.Curso,Eo.Curriculo,Eo.Oferta,EO.Etapa,Eo.Inicio,termino,     
mes_inicio,ano_inicio,Mes_termino,Ano_termino,NR_parcelas,OP.Polo
FROM etapas_ofertas EO  inner join ofertas_polos OP 
    ON (EO.curso = OP.curso AND Eo.Curriculo = OP.Curriculo AND 
EO.Oferta = OP.oferta)

eu teria construido a mesma select da sequinte maneira
 
SELECT        
Eo.Curso,Eo.Curriculo,Eo.Oferta,EO.Etapa,Eo.Inicio,termino,     
                     
mes_inicio,ano_inicio,Mes_termino,Ano_termino,NR_parcelas,OP.Polo
FROM 
        etapas_ofertas EO,
        ofertas_polos OP 
WHERE  
                EO.curso = OP.curso 
    AND  Eo.Curriculo = OP.Curriculo 
   AND EO.Oferta = OP.oferta

Qual a melhor maneira de se contruir select????
INNER JOIN ou  WHERE


Grato a todos


Responder a