查找特定年份和特定日期的日期+ Sql Server 2005

时间:2010-02-24 04:06:20

标签: sql-server-2005

考虑到一个月和一年,我如何知道该月一天的日期。

e.g。鉴于月份= 2月,年份= 2010年。我需要找到月中的星期日日期

预期输出为:

07/02/2010
14/02/2010
21/02/2010
28/02/2010

怎么做?

1 个答案:

答案 0 :(得分:2)

看看像

这样的东西
DECLARE @Month VARCHAR(3),
        @Year INT

SELECT  @Month = 'Feb',
        @Year = 2010

DECLARE @RunDate DATETIME

SELECT @RunDate = '01 ' + @Month + CAST(@Year AS VARCHAR(4))

;WITH DATES AS(
        SELECT  @RunDate DateVal,
                DATENAME(dw, @RunDate) DateNameVal
        UNION ALL
        SELECT  DateVal + 1,
                DATENAME(dw, DateVal + 1)
        FROM Dates
        WHERE DATEPART(month,DateVal) = DATEPART(month,DateVal + 1)
)
SELECT  *
FROM    DATES
WHERE   DateNameVal = 'Sunday'