我有這樣的查詢作爲存儲過程:爲什麼此存儲過程在Management Studio中快速執行,但不在應用程序中執行?
SELECT ID
FROM dbo.tblRentalUnit
WHERE (NOT EXISTS
(SELECT 1 AS Expr1
FROM dbo.tblTenant
WHERE (dbo.tblRentalUnit.ID = UnitID)))
在Microsoft SQL Server Management Studio中快車,它執行16毫秒。當我在由Visual Studio 2008自動生成的類型化數據集中使用它時,它將在64,453毫秒內執行。一分多鐘。
估計和執行計劃是這樣的:
Select [0%] <- Filter [1%] <- Merge Join (Left Outer Join) [28%] <- Index Scan [16%] <- Sort [43%] <- Clustered Index Scan [12%]
爲什麼在這裏這種差異,以及如何糾正呢?
如果您需要更多關於設置的信息,請告訴我! – Malfist 2009-05-26 13:59:01
爲什麼這會被拒絕? – Malfist 2009-05-26 17:42:26
可能是涉及藍天,綠草和東方升起的太陽的東西。 – TheTXI 2009-05-26 17:55:55