SQL Server中获取指定时间段内的所有月份

例如查询 2012-1-5 到 2012-11-3 之间所有的月份

 

declare @begin datetime,@end datetime
set @begin='2012-1-5'
set @end='2012-11-3'

declare @months int
set @months=DATEDIFF(month,@begin,@end)
select convert(varchar(7),DATEADD(month,number,@begin) ,120) AS 月份
from master.dbo.spt_values 
where type='p' AND number<=@months


结果


SQL Server中获取指定时间段内的所有月份_第1张图片



参考资料:SQL Server中获取指定时间段内的所有月份   http://www.studyofnet.com/news/1156.html


你可能感兴趣的:(sql,server)