SQL查询使用“一年中的某一天”返回“日期名称”

时间:2016-02-29 14:24:17

标签: sql-server sql-server-2008 date

我正在尝试编写 MSSQL 查询,该查询将使用一年中提供的日期返回当天的名称(例如Monday, Tuesday ...)(例如{{1} })。

1 for 1st of January, 2 for 2nd of January

我希望我的第三个查询返回正确的日期名称(在此实例中为星期二),使用提供的一年中的日期(本例中为61)。我理解问题与SELECT DATENAME(dy, '2016-03-01') - returns 61 SELECT DATENAME(dw, '2016-03-01') - returns Tuesday SELECT DATENAME(dw, 61) - returns Saturday DATENAME)中的日期部分有关,因为它的日期格式不正确,但我没有完整的日期,只有一年中的某一天。< / p>

非常感谢!

1 个答案:

答案 0 :(得分:1)

DECLARE @day_of_year int

SELECT @day_of_year = 61
SELECT DATENAME(dw, DATEADD(DAY, @day_of_year - 1, '2016-01-01'))