【发布时间】:2010-09-20 14:27:29
【问题描述】:
好的,我正在尝试编写一个查询,说明获取当前日期并将其设为开始日期。然后我想从当前日期返回一个月的 EndDate。是否有可能做到这一点?就像 2010 年 9 月 15 日作为开始日期一样,我可以从那个日期回溯到 2010 年 8 月 15 日,或者这不可能……你会为 2010 年 9 月 20 日作为开始日期做什么日期,因为每个月都有不同的天数?否则,如果这是不可能的,我还能怎么做?该报告将始终在每月 25 日运行,所以有什么想法吗?我需要从一个月的 25 号开始......如果需要,我可以在几个月之间获得一些重复的记录,但显然越少越好
现在我正在使用这个:
DECLARE @StartDate DATETIME,
@EndDate DATETIME;
SET @StartDate = DATEADD(m,-1,GETDATE());
SET @EndDate = DATEADD(m, 1, @StartDate);
这行得通吗?
另外,我怎么会说我的 AuditInsertTimestamp 介于 @Start 和 @EndDate 之间?
目前我有这个:
AND cvn.[AuditInsertTimestamp] BETWEEN @StartDate AND @EndDate ;
不过,这仍然给了我 2010 年 7 月 26 日这样的日期......
谢谢!
【问题讨论】:
-
2010 年 3 月 30 日的结束日期应该是什么时候?
-
结束日期应该是 2010 年 2 月 30 日我认为...
-
lol touche....2 月 28 日那是我的问题,这几个月的天数不同。
-
您是要查找一个月前的日期还是要选择记录?您似乎在问如何获取日期,然后提到获取记录。
-
基本上,每次运行 rpeort 时我只需要返回 30 天,但我不想错过它运行的一天,但它可以重复几天。
标签: sql sql-server sql-server-2005