从特定日期获取星期的第一个和最后一个日期

时间:2017-09-18 14:25:31

标签: sql tsql

我在T-SQL中有一个约会。所以我想得到第一个日期和一周的最后一个日期。

例如我有这个日期:2017-09-19。我希望2017-09-18和2017-09-24

我怎么能得到这个?

2 个答案:

答案 0 :(得分:3)

尝试以下方法:

SELECT 
   DATEADD(dd, -(DATEPART(dw, yourDateInput)-1), yourDateInput) AS Weekstart
  ,DATEADD(dd, 7-(DATEPART(dw, yourDateInput)), yourDateInput) As weekEnd;

请注意:一周的第一天取决于sql server上的语言设置。

因此,如果您有17 - 23个开始和结束日期,那么星期日就是一周的第一天。

因此,在这种情况下,您可能需要使用:

SET DATEFIRST 1;

将星期一设定为一周的第一天。

enter image description here

答案 1 :(得分:0)

尝试运行以下查询,它会为您提供所需的一切:)

master-config.yaml