2012-09-27 108 views
0

可能重複:
Explicit vs implicit SQL joins在連接查詢

第一:

SELECT a.field, b.field 
FROM a, b 
WHERE a.id = b.id 

二:

SELECT a.field, b.field 
FROM a INNER JOIN b 
ON a.id = b.id 

這兩種方法之間是否有區別,或者它們的工作方式相同?

+1

最終結果將是相同的。問題在於執行是否相同。我想對於這個簡單的查詢,計劃者將足夠聰明,爲兩者制定相同的計劃。 –

+0

閱讀rs的鏈接。張貼 –

+1

沒有區別,除了錯誤的可能性和維修的困難。請閱讀:http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins.aspx –

回答

0

他們產生相同的結果,並執行相同的,但我覺得第二種方法是迄今爲止在大型查詢更清晰,所以它應始終使用(雖然我不同的格式化)

I格式是這樣的:

SELECT 
    a.field 
    ,b.field 
FROM a 
INNER JOIN b ON a.id = b.id