0
Plz告訴我在mssql中的2個查詢之間有什麼更好?什麼更好,WITH語句或左連接3個表?
;with ab as (select a.*,b.CategoryName from Products a
left join Categories b on a.CategoryID = b.CategoryID where b.CategoryID = 2)
select * from ab left join Suppliers c on ab.SupplierID = c.SupplierID
或
select * from Products a left join Categories b on a.CategoryID = b.CategoryID
left join Suppliers c on a.SupplierID = c.SupplierID
where b.CategoryID = 2
是相同的,只有幫助,使代碼更易讀。 –
沒有足夠的信息來說明。你必須測試兩者,而「更好」是主觀的。我個人會做第二個與左邊的兩個連接。我只提前在極其複雜的查詢中實現數據,以簡化維護。 – xQbert
比較它們的最佳方式是比較執行計劃:http://stackoverflow.com/a/7359705。他們會精確地告訴你查詢優化器如何執行查詢。 – aschmied