SET DATEFIRST

将一周的第一天设置为从 1 到 7 之间的一个数字。

语法

​SET DATEFIRST { number @number_var ​}

参数

number | @number_var

是一个整数,表示一周的第一天,可以是下列值中的一个。

一周的第一天是

1

星期一

2

星期二

3

星期三

4

星期四

5

星期五

6

星期六

7(默认值,美国英语)

星期日

注释

使用 @@DATEFIRST 函数检查 SET DATEFIRST 的当前设置。

SET DATEFIRST 的设置是在执行或运行时设置,而不是在分析时设置。

权限

SET DATEFIRST 权限默认授予所有用户。

示例

下例显示一个日期值对应的一周中的某一天,并显示更改 DATEFIRST 设置的效果。

--2017-1-1是星期天
---默认值:周日为一周的第一天
SET DATEFIRST 7
GO
SELECT CAST('1/1/2017' AS datetime) as 本年第一天, DATEPART(dw, '1/1/2017') as 本周第几天
go
--设置周一为一周的第一天
SET DATEFIRST 1
GO
SELECT CAST('1/1/2017' AS datetime) as 本年第一天, DATEPART(dw, '1/1/2017') as 本周第几天
go

 SqlServer中 SET DATEFIRST_SET DATEF