【发布时间】:2017-04-20 12:51:42
【问题描述】:
我使用此查询来获取不包括周末的最后营业日期:
DECLARE @LastBizDate as DATETIME
SELECT @LastBizDate = (DATEADD(DAY, CASE DATENAME(WEEKDAY, GETDATE())
WHEN 'Saturday' THEN -1
WHEN 'Sunday' THEN -2
ELSE -1 END, DATEDIFF(DAY, 0, GETDATE())))
SELECT @LastBizDate AS 'Last_Business_Date'
但是我怎样才能排除假期呢?
我有这个带有示例数据的tbl_Holidays 表:
-------------------------
|Holiday_Date |
|-----------------------|
|2017-04-14 00:00:00.000|
|2017-05-01 00:00:00.000|
|2017-10-18 00:00:00.000|
|2017-12-25 00:00:00.000|
-------------------------
注意:不必考虑当假期在星期日,那么星期一将被视为休息。同样,无需考虑。
提前谢谢你。
【问题讨论】:
-
你可以试试我在上一个问题stackoverflow.com/questions/43492452/…的回答
标签: sql-server