2017-08-02 66 views
1

我知道關於WHERE謂詞順序的討論很多,關於WHERE子句和ON子句,但JOIN謂詞順序如何?TSQL - JOIN謂詞的順序問題

例如,是否有任何之間的性能差異:與

SELECT * 
FROM table1 AS a 
JOIN table2 AS b ON 
    a.key2 = b.key2 
    AND a.key1 = b.key1 

SELECT * 
FROM table1 AS a 
JOIN table2 AS b ON 
    a.key1 = b.key1 
    AND a.key2 = b.key2 

是否有性能差異?會不會有?如果是這樣,在什麼邊緣情況下?

謝謝

+1

不,他們(*應*)都生成相同的查詢計劃。您可以通過查看兩個查詢的生成查詢計劃來輕鬆確認此情況。 – Siyual

回答

2

查詢優化器將選擇查詢計劃。他們是同一個查詢。