2011-03-28 48 views
9

使用SQL Server 2005:SQL - 獲取月/季度的數值日

我怎樣才能獲得季度的月份和日期的數值一天在查詢?

DECLARE @DATE DATETIME 
SET @DATE = GETDATE() 

SELECT DATEPART(dy, @DATE) AS DayOfYear 
    --, <something> AS DayOfQuarter 
    --, <something> AS DayOfMonth 
    , DATEPART(dw, @DATE) AS DayOfWeek 

在此先感謝!

+0

+1剛剛通過Cade Roux的回答發現了一些與日期一起工作的新技巧,因爲你的問題,謝謝,雖然我已經回答了一半。 – 2011-03-28 15:21:50

回答

29
DECLARE @DATE DATETIME 
SET @DATE = GETDATE() 

SELECT DATEPART(dy, @DATE) AS DayOfYear 
    , DATEDIFF(d, DATEADD(qq, DATEDIFF(qq, 0, @DATE), 0), @DATE) + 1 AS DayOfQuarter 
    , DAY(@Date) AS DayOfMonth 
    , DATEPART(dw, @DATE) AS DayOfWeek 
+0

精心完成!謝謝。 – 2011-03-28 15:18:56

+0

+1 DayOfQuarter精彩計算! – 2011-03-28 15:22:14

0

至於季度的這一天,這需要我的一點進一步調查。儘管如此,我想這對於一個月的一天,這將僅僅是日期本身:

select DATEPART(D, @DATE) 
0

SELECT DATEPART(年,'12:10:3​​0.123' ) ,DATEPART(月,'12:10: (dayday,'12:10:3​​0.123'); DATEPART(day,'12:10:3​​0.123') ,DATEPART(dayofyear'12:10:3​​0.123') ,DATEPART