Sql server获得一个月前的结果

时间:2015-03-19 16:23:32

标签: c# sql sql-server

我有以下查询

 DECLARE @StartDate DATETIME, @EndDate DATETIME
SET @StartDate = DATEADD(mm,-1, getdate())
select count(status)  from [full]
where (date_reception> @StartDate and status = 'OPEN')

我需要获得一个月前的结果,例如我们在2015-03-19我需要从2015-02-19到现在获得结果。 当我尝试上面的查询时,我得到结果(4412),当我尝试(其中date_reception>'2015-02-19')我得到(5638)

2 个答案:

答案 0 :(得分:1)

如果不考虑日期的时间部分,请尝试以下代码。如果是,您当前的代码似乎是准确的。

DECLARE @StartDate DATETIME, @EndDate DATETIME, @currentDate date
set @currentDate = GETDATE()
SET @StartDate = DATEADD(mm,-1, @currentDate))
select count(status)  from [full]
where (date_reception> @StartDate and status = 'OPEN')

答案 1 :(得分:0)

尝试

WHERE date_reception BETWEEN  DATEADD(month, -1, GETDATE()) AND DATEADD(GETDATE())