2011-04-14 146 views
0

如何計算日期範圍內的星期數?這裏我的周從星期六到星期五開始。我有一個開始日期和結束日期。有了這個,我將如何計算使用SQL查詢?計算日期範圍內的星期數

+0

我刪除我的答案 - 有與它其他的邏輯問題,我沒有聽清。抱歉! – JNK 2011-04-14 12:41:16

+0

希望我的更新回答對您有所幫助。 – Magnus 2011-04-15 07:14:27

回答

3

使用DATEPART可獲得星期數 和DATEFIRST以設置一週中的第一天。 (請參閱http://msdn.microsoft.com/en-us/library/ms181598.aspx

將星期六的所有星期數作爲周的第一天的範圍的示例。

SET DATEFIRST 6 
SELECT DISTINCT 
    DATEPART(WEEK, createDate) 
FROM 
    tblUser 
WHERE 
    createDate > '2005-01-01' AND createDate < '2011-01-01' 
ORDER BY 
    DATEPART(WEEK, createDate) 
+0

這會給出結果,但我的一週從週六開始到週五。以上查詢表示從星期日到星期六開始的一週,這是默認設置。所以根據我的星期範圍,我應該將當前星期數字設置爲14,我手動計算出 – 2011-04-14 11:46:30

+0

+1 - 對於'DATEFIRST',這應該是他需要的。 – JNK 2011-04-14 13:41:25

+0

謝謝。這真的解決了。 – 2011-04-18 04:19:50

0

您可以使用此與您的SQL工作運行良好:

SET LANGUAGE us_english -- with your language 
GO 
相關問題