有没有办法让我根据给定的参数获得月份的年份?
DECLARE @StartDate DATETIME,
@EndDate DATETIME;
SELECT
@StartDate = '2016-02-01',
@EndDate = '2017-03-01';
SELECT
/*is there a way for me to get the year of months based on the parameter dates*/
/*DATEPART(YEAR, DATEADD(YEAR, x.number, @StartDate)) AS Year,*/
DATEPART(MONTH, DATEADD(MONTH, x.number, @StartDate)) AS Month,
DATENAME(MONTH, DATEADD(MONTH, x.number, @StartDate)) AS MonthName
FROM
master.dbo.spt_values x
WHERE
x.type = 'P'
AND x.number <= DATEDIFF(MONTH, @StartDate, @EndDate)
我查询的结果....
我想要的是,从2月到12月它将有2016年的一年,从1月到3月它将有2017年.....根据我给出的参数...
提前致谢 .
1 回答
试试这个:
Demo here