Branching
CREATE OR ALTER PROC dbo.usp_RptUsersByReputation @Reputation INT AS
BEGIN
SELECT TOP 1000 *
FROM dbo.Users
WHERE Reputation = @Reputation
ORDER BY DisplayName;
END
GO
/* These two get different plans: */
EXEC usp_RptUsersByReputation @Reputation = 2 WITH RECOMPILE;
EXEC usp_RptUsersByReputation @Reputation = 1 WITH RECOMPILE;Last updated