如何更新日期,但 date/day 不应该是周六或周日

How to update date , but date/day should not be sat or sunday

我在 SSIS 中有一个执行 SQL 任务,它将数据库中的日期更新为今天的日期+3。但是,如果假设今天是星期四(18/6/2015)并且作业执行,则根据数据库中的更新查询日期将更新为(21/6/2015),其中 20 日和 21 日是星期六和星期日。相反,我希望将日期更新为 23/6/2015,即星期二(不包括星期六和星期日)。请帮忙!

我做了以下 SELECT 声明,可能会对您有所帮助。 使用 DATEPART 函数,您可以发现天数总和是一周中的哪一天。

DATEPART returns 表示作为参数传递给函数的日期的星期几的数字,考虑到 1 是星期日,7 是星期六。

select CASE 
         WHEN DATEPART(DW, GETDATE() + 4) = 7 THEN (SELECT GETDATE() + 6)
         WHEN DATEPART(DW, GETDATE() + 5) = 1 THEN (SELECT GETDATE() + 5)
       END As date

在更新语句中使用此示例:

UPDATE <your table> 
SET    dateofanything = (CASE 
                           WHEN DATEPART(DW, GETDATE() + 3) = 7 THEN (SELECT GETDATE() + 5)
                           WHEN DATEPART(DW, GETDATE() + 3) = 1 THEN (SELECT GETDATE() + 4)
                         END As date)