我在我的select語句如下:如何計算,如果工作日是超過6天,從今天的日期
CASE WHEN DATEADD(DAY, - 5, GETDATE()) > [Date] THEN '6+' ELSE NULL END AS Test
這工作得很好,但它也包括週末。如果今天的日期--5是>日期,我將如何去計算不計算週末的部分?我只想使用5個工作日,而不是週末。
我在我的select語句如下:如何計算,如果工作日是超過6天,從今天的日期
CASE WHEN DATEADD(DAY, - 5, GETDATE()) > [Date] THEN '6+' ELSE NULL END AS Test
這工作得很好,但它也包括週末。如果今天的日期--5是>日期,我將如何去計算不計算週末的部分?我只想使用5個工作日,而不是週末。
這將排除週六和週日從CASE
:
CASE WHEN
(
(DATEADD(DAY, - 5, GETDATE()) > [Date])
AND
(DATEPART(WEEKDAY, DATEADD(DAY, - 5, GETDATE())) NOT IN (7,1))
)
THEN '6+' END AS Test
所以如果在5天回是週末,你想它只是返回'NULL'? – JNK 2013-02-28 21:21:08
是的,這是正確的 – mameesh 2013-02-28 21:21:57
只需將-5更改爲-7。五個工作日之外 - 不包括假期 - 將持續一週。瞧,7天。 – 2013-02-28 21:23:42