当您提供当前日期时,我试图获取该季度的哪一天。
例如,如果我给出2012年1月25日,则输出应为25。因为它是该季度的第25天。
同样,如果我给出02/01/2012,则应给出32作为输出。
我能够获得该季度的第一天,但无法获得该季度的哪一天。
我做了这样的事情:
SELECT FirstDayOfQuarter = CONVERT(DATE, dateadd(qq, datediff(qq,0, GETDATE()),0))
谁能帮我?
最佳答案
查找该季度的第一天:
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;