您的位置:首页 > 数据库

SQL SERVER 同一个表并且是同一个时间字段进行相减

2013-11-06 16:06 232 查看
表A
ID  NUM   TIEM
1    10      2012-06-10 10:10:00
2    20      2012-06-10 20:10:00
3    20      2012-06-10 20:10:00
4    10      2012-06-10 10:20:00
5    10      2012-06-10 10:30:00
......
求SQL语句:用NUIM进行分组,就用后一条记录的时间减去前一条记录的时间(精确到分钟),例如NUM=10时,就用ID为4的减去ID为1的时间差,ID为5的减去ID为4的时间差,即得如下表
ID  NUM   TIEM                                时间差
1    10      2012-06-10 10:10:00         0
2    20      2012-06-10 20:10:00         0
3    20      2012-06-10 20:10:00        600
4    10      2012-06-10 10:20:00         10
5    10      2012-06-10 10:35:00         15

****************************************************************

select
a.id,  a.num,  a.time,  isnull(   DATEDIFF(      [Minute],      (       (select top 1 time from test where num = ( select num from test where id=a.id )  AND  id <a.id  order by ID desc)--获得前一条记录      ),      a.time     )  ,0) as result from test a
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐