我正在尝试创建一种灵活的方式来确定前一周的最后一天,因为我知道这将在具有不同计划周的不同环境中运行(一些客户使用周六至周五;周日至周六;周一至周日)。我正计划创建一个变量以用作每个客户一周的开始日期(见下文)
Set @BeginningWeek = 1 -- 1=Mon; 2=Tues; 3=Wed; 4=Thurs; 5=Fri; 6=Sat; 7=Sun
我一直在尝试使用 dateadd 和 datepart 的组合,以及上面的变量来尝试获取一周的最后一天,但我在逻辑上遇到了问题。我不想使用 Set DateFirst,这些脚本将在客户环境中运行,所以我不想更改其数据库中的任何内容。
假设脚本在星期三(9/3)运行;客户的计划周是周六周五;我想设置另一个变量@EndDate = 上一个星期五(8/29)。我需要灵活地与另一个计划周为周一至周日的客户使用相同的脚本(仅更改 @BeginningWeek 值)并设置 @EndDate = 上周日(8/31)。