2014-03-13 103 views
1

我使用SQL Server 2008R2SQL性能加盟提交

我想你對兩個SQL語句如下意見作爲關於性能和最佳實踐。

select 
* 
from BcpSample1 
where dataloadid = (select MAX(id) from LoadControl_BcpSample1 where Status = 'completed') 

而且

select 
a.* 
from CiaBcpSample1 a 
inner join (select ActiveDataLoadId = MAX(id) from LoadControl_BcpSample1 where Status = 'completed') as t 
on a.DataLoadId = t.ActiveDataLoadId 

我試着查詢計劃在SQL Server Studio,但2次運行後兩者都返回顯示相同的查詢計劃。

謝謝

回答

0

在「關於表現和最佳實踐」。這取決於很多事情。一次做得好的可能不是下一個最好的。你必須測試,測量性能,然後選擇。

你說由SQL Server生成的計劃是相同的,所以在這種情況下應該沒有任何區別。選擇最容易維護的查詢並轉到下一個問題。