Qual comando é mais rápido?

SQL Server

16/03/2005

Senhores, eu tenho dois selects que fazem a mesma função. Porém me surgiu uma dúvida, qual dos dois tem uma melhor performance?

Eis os selects:
select usuario.NomeProp, Condominio.NomeCond, Fc.*, CONVERT(char, DtVencFC, 103) AS Vencimento  
from FC, usuario, condominio 
where Fc.CodProp = usuario.CodProp 
and condominio.CodCond = FC.CodCond


select usuario.NomeProp, Condominio.NomeCond, Fc.*, CONVERT(char, DtVencFC, 103) AS Vencimento
from FC 
inner join usuario on Fc.CodProp = usuario.CodProp
inner join condominio on condominio.CodCond = FC.CodCond 



Cristiam

Cristiam

Curtidas 0

Respostas

Eduardo.padilha

Eduardo.padilha

16/03/2005

Teste no Query Analyzer, com a opcao ´Show Execution Plan´,
daí vc verá qual o caminho q esta fazendo para a busca .


GOSTEI 0
Cristiam

Cristiam

16/03/2005

Ok... Fiz isso e o resultado que obtive foi: Iguais... Ambos fizeram o mesmo procedimento. :)


GOSTEI 0
Raserafim

Raserafim

16/03/2005

uma certa vez construi uma consulta, bem grande por sinal e com vários relacionamentos. fiz os relacionamentos todos na clausura where e coloquei o programa pra rodar, utilizei assim por um tempo, mas não estava gostando do desempenho. resolvi transformar tudo utilizando os joins. Melhorou muito a performance, e isso visivelmente sem utilizar nenhum programa para teste de deesempenho.
Então pela prática lhe aconselho a utilizar com os joins, o que na minha opinião deixa um código bem mais fácil de ler e de trabalhar.


GOSTEI 0
Cristiam

Cristiam

16/03/2005

Obrigado Raserafim, estava tentando descobrir qual o mais rápido mesmo para poder utilizar... :)
Vou modificar alguns códigos e colocar com inner Join, valeu. :wink:


GOSTEI 0
Fer_nanda

Fer_nanda

16/03/2005

Analisar o tempo de execução de instruções SQL é muito importante.
Veja esse artigo http://www.imasters.com.br/imprimir.php?cn=2846&cc=86


GOSTEI 0
POSTAR