从事英国项目。
我放了一个可爱的变量来给我一个星期一到星期五最后一个工作日的开始日期和结束日期。不幸的是,我希望开始日期时间是一天的开始,结束日期是一天的结束。我可以做些什么改变来实现这一点?
SET @Startdate =
( CASE
WHEN DATEPART(WEEKDAY, @Startdate) = 7
THEN DATEADD(DAY, -2, @Startdate)
WHEN DATEPART(WEEKDAY, @Startdate) = 1
THEN DATEADD(DAY, (-2 - DATEPART(WEEKDAY, @Startdate)), @Startdate)
ELSE
DATEADD(DAY, -1, @Startdate)
END )
SET @Enddate =
CASE
WHEN DATEPART(WEEKDAY, @Enddate) = 7
THEN DATEADD(DAY, -2, @Enddate)
WHEN DATEPART(WEEKDAY, @Enddate) = 1
THEN DATEADD(DAY, (-2 - DATEPART(WEEKDAY, @Enddate)), @Enddate)
ELSE
DATEADD(DAY, -1, @Enddate)
END
print @Startdate
print @Enddate
结果 :
2013 年 2 月 26 日上午 12:00 2013 年
2 月 26 日上午 12:00
我需要Feb 26 2013 00:00
until Feb 27 2013 00:00
,所以它涵盖周二全天(如果今天运行,则为最后一个工作日)。