获取SQL Server中的第一天
我试图按周分组记录,将汇总日期存储为一周的第一天。但是,我用于舍入日期的标准技术似乎在几周内没有正常工作(尽管它确实存在了几天,几个月,几年,几个季度以及我应用它的任何其他时间范围)。
这是SQL:
select "start_of_week" = dateadd(week, datediff(week, 0, getdate()), 0);
返回2011-08-22 00:00:00.000
,这是星期一,而不是星期日。选择@@datefirst
返回7
,这是星期日的代码,所以据我所知,服务器设置正确。
通过将上面的代码更改为:我可以轻松地绕过这个:
select "start_of_week" = dateadd(week, datediff(week, 0, getdate()), -1);
但事实上,我必须做出这样的例外让我有点不安。此外,如果这是一个重复的问题,请道歉。我发现了一些相关问题,但没有一个专门解决这个问题。
慕容森
相关分类