首页 > 解决方案 > 如何在 SQL Server 中设置最后营业日期

问题描述

我是 SQL 的新手。我需要在查询中声明最后营业日期。例如,

必须排除周末和国定假日。

我需要这种格式:

declare @LastBizDate as datetime
set @LastBizDate = (DATEADD(DAY, CASE DATENAME(WEEKDAY, GETDATE()) 
                      WHEN 'Saturday' THEN -1 
                      WHEN 'Sunday' THEN -2 
                      ELSE -1 END, DATEDIFF(DAY, 0, GETDATE())))

我真的很感谢你的帮助!

标签: sqlsql-serverdatabase

解决方案


declare @LastBizDate as datetime
set @LastBizDate = CASE DATENAME(WEEKDAY, GETDATE())
                      WHEN 'Monday' THEN GETDATE()-3
                      WHEN 'Sunday' THEN GETDATE()-2
                      ELSE GETDATE()-1 END
PRINT @LastBizDate

推荐阅读