如何獲得一週中的第一天和每週的最後一天,當我們輸入任何一天的一天?如何在sql server 2008中獲得本週的第一天以及本週的最後一天?
例如,如果我們輸入一個日期,那麼第一(星期一)和最後一個(星期五)日應顯示。 即如果我們輸入24-jan-2014,那麼應該顯示20-jan-2014和24-jan-2014。
問候
如何獲得一週中的第一天和每週的最後一天,當我們輸入任何一天的一天?如何在sql server 2008中獲得本週的第一天以及本週的最後一天?
例如,如果我們輸入一個日期,那麼第一(星期一)和最後一個(星期五)日應顯示。 即如果我們輸入24-jan-2014,那麼應該顯示20-jan-2014和24-jan-2014。
問候
這裏是你如何能做到這一點:
DECLARE @yourdate date = getdate()
Select dateadd(ww, datediff(ww, 0, @yourdate), 0)
Select dateadd(ww, datediff(ww, 0, @yourdate), 4)
您設置@yourdate
到您想要的日期。第一個SELECT會給你的第一天,第二個SELECT會給你的最後日期
試試這個
SELECT DATEADD(wk, DATEDIFF(wk, 6, '5/13/2005'), 6)
SELECT DATEADD(wk, DATEDIFF(wk, 5, '5/13/2005'), 5)
(OR)
Declare @Date datetime
Det @Date = '2012-04-12'
Delect @Date - DATEPART(dw, @Date) + 1 FirstDateOfWeek,
@Date + (7 - DATEPART(dw, @Date)) LastDateOfWeek
這解決了它,還包大約一年結束:
SELECT DATEADD(wk,DATEDIFF(d,0,'01 January 2017')/ 7,0)
也許這Q能夠能幫你:http://stackoverflow.com/questions/7168874/get-first-day-of-week-in-sql-server – Amber
這一個:http://stackoverflow.com/questions/ 1110998/get-day-in-sql-2005-2008 – Jamiec
25-jan-2014應該返回什麼? – dnoeth