我正在尋找給我正確的函數week-number
。函數計算一年中的正確週數
一年的第一天應該總是在第一週。 一年的第一個星期六屬於第一週。
換句話說:here is我在找什麼,但不是在PostgreSQL
,而是在sql-server
。
我真的想用一個函數來做,我會稍後調用。
非常感謝您的幫助。
我正在尋找給我正確的函數week-number
。函數計算一年中的正確週數
一年的第一天應該總是在第一週。 一年的第一個星期六屬於第一週。
換句話說:here is我在找什麼,但不是在PostgreSQL
,而是在sql-server
。
我真的想用一個函數來做,我會稍後調用。
非常感謝您的幫助。
在SQL Server中,不需要自定義函數;只是使用內置的DATEPART
function與week
作爲第一個參數:
-- 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');
Outpu T:14
這裏有一個現場演示:http://www.sqlfiddle.com/#!3/d41d8/11802
選擇日期部分(周,GETDATE())作爲CurrentWeekofYear
[?到底什麼,你嘗試過(http://whathaveyoutried.com) – 2013-04-01 15:24:39
不要打擾寫一個函數。相反,請創建一個[日曆表](http://sqlserver2000.databases.aspfaq.com/why-should-i-consider-using-an-auxiliary-calendar-table.html)並預先填充它。這在維護和用於查詢中要簡單得多,並且還有許多其他用途。您可能還想查看關於此主題的[許多現有問題](http://stackoverflow.com/search?q=sql-server+week+number)。 – Pondlife