函数计算正确的一周数

时间:2013-04-01 15:22:23

标签: sql sql-server-2008 tsql week-number

我正在寻找能给我正确week-number的功能。

一年的第一天应始终在第1周。 一年的第一个星期六属于第一周。

换句话说:here is我想要的是什么,但不是PostgreSQL,而是sql-server

我真的想要使用我稍后会调用的函数来做到这一点。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

在SQL Server中,不需要自定义功能;只需使用内置DATEPART functionweek作为第一个参数:

-- first day
select datepart(week, '2013-01-01');

输出:1

-- first Saturday
select datepart(week, '2013-01-05');

输出:1

-- first Sunday
select datepart(week, '2013-01-06');

输出:2

-- today
select datepart(week, '2013-04-01');

输出:14

这是一个现场演示:http://www.sqlfiddle.com/#!3/d41d8/11802

答案 1 :(得分:0)

选择datepart(week,getdate())作为CurrentWeekofYear