SQL Server获取时间段内的所有月份
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
查询结果