获得季度的天数

pet*_*ter 2 sql t-sql sql-server sql-server-2008

当你提供当前日期时,我正试图获得本季度的哪一天.

例如,如果我给出01/25/2012,那么输出应为25.因为它是本季度的第25天.

同样,如果我给02/01/2012它应该给出32作为输出.

我能够在本季度的第一天获得,但无法获得该季度的哪一天.

我做了这样的事情:

 SELECT FirstDayOfQuarter  = CONVERT(DATE, dateadd(qq, datediff(qq,0, GETDATE()),0))
Run Code Online (Sandbox Code Playgroud)

谁能帮我?

Jam*_*e F 9

查找本季度的第一天:DATEADD(q,DATEDIFF(q,0,@ TestDate),0)

然后找出您指定日期的天数差异.

DECLARE @TestDate DateTime

SET @TestDate = 'January 25, 2012'


SELECT DATEDIFF(dd, DATEADD(q, DATEDIFF(q, 0, @TestDate),0), @TestDate) +1
Run Code Online (Sandbox Code Playgroud)