怎么按时间间隔对数据分组

ayun00 2012-11-29 10:11:24
有表 如下

我想用 一行数据 中 CreteTime 字段的值 和邻近的上下2个数据的 比较 超过 一个数值(比如超过10分钟) 作为条件, 求 sum(Mileage) 和 sum(CumulativeOil), 以及它们的起点 时间 和终点时间.

比如 有500条数据, 其中数据第100行和101行的CreteTime 相差10分钟, 200行和 201行相差 30分钟,

那么输出

1-100的sum(Mileage) , 1-100的sum(CumulativeOil), 行1的 CreteTime ,行100的 CreteTime
101-200的sum(Mileage) , 101-200的sum(CumulativeOil), 行101的 CreteTime ,行200的 CreteTime
201-500的sum(Mileage) , 201-500的sum(CumulativeOil), 行201的 CreteTime ,行500的 CreteTime


这样的sql 语句怎么写





Mileage CumulativeOil CreteTime
--------------------------------------- --------------------------------------- -----------------------
0.00 0.00 2012-11-25 13:44:01.987
0.00 0.00 2012-11-25 13:44:12.487
0.00 0.00 2012-11-25 13:44:22.777
0.00 0.00 2012-11-25 13:44:32.917
0.00 0.00 2012-11-25 13:44:43.167
0.00 0.00 2012-11-25 13:44:53.443
0.00 0.00 2012-11-25 13:45:03.567
0.00 0.00 2012-11-25 13:45:13.800
0.00 0.10 2012-11-25 13:45:24.067
0.00 0.00 2012-11-25 13:45:34.227
0.00 0.00 2012-11-25 13:45:44.450
0.00 0.00 2012-11-25 13:45:54.623
0.00 0.00 2012-11-25 13:46:04.790
0.00 0.00 2012-11-25 13:46:14.957
0.00 0.00 2012-11-25 13:46:25.263

...全文
290 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ayun00 2012-11-30
  • 打赏
  • 举报
回复
遍历 效率太低了吧 如果数据有几十万条 会死人的
six-years 2012-11-30
  • 打赏
  • 举报
回复
愚笨的办法 循环遍历 吧它分成三个table 再组合

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧