SQL生成日期列


--生成一个日期范围,如2014.01、2014.02...
--@type 自增部分类型 y,m,d,w
--@@startDate 开始日期
--@@endDate   结束日期
create function CreateDateRange(@type char(1),@startDate date,@endDate date)
returns @DateValueRange table(datevalue date)
as
begin

declare @tempDate date=@startDate

while @tempDate<@endDate
begin
 select @tempDate= case @type when  'y' then dateadd(yy, 1, @tempDate) when  'm' then dateadd(mm, 1, @tempDate) when 'd' then dateadd(dd, 1, @tempDate) when  'w' then dateadd(ww, 1, @tempDate)end 
 insert into @DateValueRange(datevalue)select @tempDate
end 
 return  
      
end
go
select * from CreateDateRange('d',GETDATE(),GETDATE()+10)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM