码迷,mamicode.com
首页 > 数据库 > 详细

简单的SQl时间序列生成,每次时间间隔10分钟。

时间:2017-06-12 16:22:46      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:日期   arch   date   ted   tab   convert   while   --   count   

create table #timeseries(Times datetime not null)
go
declare @firstdate datetime , @lastdate datetime
declare @MI int
begin
set @firstdate=‘8/8/2012 6:00‘
set @lastdate =‘8/9/2012 6:00‘
set @MI=datediff(MI,@firstdate,@lastdate)
--嵌套循环
while(@MI>=0)
begin
insert into #timeseries
values(@firstdate)
SET NOCOUNT ON
set @firstdate=dateadd(MI,10,@firstdate)--每次起始时间递增10分钟。
set @MI=datediff(MI,@firstdate,@lastdate) --当@firstdate递增至与@lastdate相同时,MI为0,退出循环
SET NOCOUNT Off
end
end
select ROW_NUMBER() over(order by Times) as id, CONVERT(varchar(10),Times, 120 ) as 日期 ,Times from #timeseries order by Times asc
drop table #timeseries

简单的SQl时间序列生成,每次时间间隔10分钟。

标签:日期   arch   date   ted   tab   convert   while   --   count   

原文地址:http://www.cnblogs.com/hclw/p/6993276.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!