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

Posted 菜鸟@学习园地

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单的SQl时间序列生成,每次时间间隔10分钟。相关的知识,希望对你有一定的参考价值。

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分钟。的主要内容,如果未能解决你的问题,请参考以下文章

如何使用间隔 1 分钟在两个日期之间将时间序列数据生成到 Oracle PL/SQL 中的表中?

Oracle中按照时间范围以及时间间隔抽取数据的问题

Oracle SQL 组行计数按 10 分钟的时间间隔

SQL语句问题,查询时间字段与上条数据间隔小于10分钟的数据

在 Oracle SQL 中按时间间隔聚合数据

Objective-C:完成一个间隔计时器