我的数据库是一个油田管道的监测的数据,主要是监测管道的油,水,气三相数据,管道中油水气的速度是不一样的
主要表结构 设计如下
表名:油2009年3月3日10点10分10秒时长100分钟
时间点 含油率 流速
2009-3-3 10:10:10 30.54 3.24
2009-3-3 10:10:11 31.54 3.14
2009-3-3 10:10:12 30.24 3.14
2009-3-3 10:10:13 30.59 3.21
2009-3-3 10:10:14 30.00 3.19
...................其他监测相也与其类似。
每100分钟满以后以当前时间建立一个新表例如我想查找某个时间点以后250分钟内的含油率的平均值,我怎么 写SQL语句。这种表设计方式 有没有什么不妥?
主要表结构 设计如下
表名:油2009年3月3日10点10分10秒时长100分钟
时间点 含油率 流速
2009-3-3 10:10:10 30.54 3.24
2009-3-3 10:10:11 31.54 3.14
2009-3-3 10:10:12 30.24 3.14
2009-3-3 10:10:13 30.59 3.21
2009-3-3 10:10:14 30.00 3.19
...................其他监测相也与其类似。
每100分钟满以后以当前时间建立一个新表例如我想查找某个时间点以后250分钟内的含油率的平均值,我怎么 写SQL语句。这种表设计方式 有没有什么不妥?
set @dt = '某个时间点'select avg(含油率) from tb where datediff(mi , @dt , 时间点) <= 250
and 时间点 <= dateadd(mi,250,@时间点)
select *
from (
select * from 油2009年3月3日10点10分10秒时长100分钟
union all
select * from 油2009年3月3日10点12分10秒时长100分钟
...
)
每秒约5个左右吧,24小时全部监测,初次接触数据库,有很多的不懂,我现在用的是sql server 2000