我有一个视图的存储过程,它是如此庞大,它总是超时,它用于查找特定日期范围的数据。这对我来说是一个全新的概念,我已经为主要日期范围设置了存储过程,如果我需要特定日期,我只是不知道如何正确执行它。这是代码和问题
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[COL_Run_DOM_Parameters]
@StartDate varchar (50),
@EndDate varchar (50)
AS
SET NOCOUNT ON
SELECT *
FROM dbo.COL_V_GEMS_DOM_FCT
WHERE REC_EFF_STT_DT BETWEEN '2010-01-01' AND '2012-12-31'
当我执行时,我会这样做:
Execute COL_Run_DOM_Parameters @StartDate = '2011-12-22', @EndDate '2012-05-17'
但是当我执行它时,它仍然给了我 2010 年到 2012 年之间的所有数据,而不是我要求的日期范围。我的代码哪里有错误?