我正在使用SS 2005
我见过示例代码
DECLARE @restore = SELECT @@DATEFIRST SET DATEFIRST 1 SELECT datepart(dw,ADateTimeColumn) as MondayBasedDate,.... FROM famousShipwrecks -- SET DATEFIRST @restore
假设在查询运行时另一个查询设置DATEFIRST?
如果另一个查询依赖于datefirst为7(例如)并且没有设置它,并且在我的查询运行时运行,那么他的问题是不设置它?或者是否有更好的方法来编写依赖于给定日期为第1天的查询.
@@ DATEFIRST是您的会话的本地.您可以通过打开Sql Server Management Studio(SSMS)中的选项卡来验证它.在第一个选项卡中执行此代码:
SET DATEFIRST 5
并验证它不会影响其他选项卡:
select @@datefirst
请参阅此MSDN文章.