sql调优
SET STATISTICS IO ON
清除缓存
DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
时间观察
SET STATISTICS TIME ON
parameter sniffing(reuse execution plan)
ALTER PROCEDURE Get_SalesOrderHeader (
@FromCustid INT, @ToCustid INT ) AS
SELECT * FROM Sales.SalesOrderHeader WHERE CustomerID BETWEEN @FromCustid AND @ToCustid OPTION (OPTIMIZE FOR(@FromCustid = 11000,@ToCustid = 11002))
ALTER PROCEDURE Get_SalesOrderHeader ( @FromCustid INT, @ToCustid INT ) AS
SELECT * FROM Sales.SalesOrderHeader WHERE CustomerID BETWEEN @FromCustid AND @ToCustid OPTION (RECOMPILE)GO
ALTER PROCEDURE Get_SalesOrderHeader (
@FromCustid INT, @ToCustid INT ) AS
DECLARE @local_FromCustid int
DECLARE @local_ToCustid INT
SELECT * FROM Sales.SalesOrderHeader WHERE CustomerID BETWEEN @local_FromCustid AND @local_ToCustid

浙公网安备 33010602011771号