Mysql 相邻两行记录某列的差值方法

Mysql 相邻两行记录某列的差值方法,第1张

Mysql 相邻两行记录某列的差值方法

表结构:

数据:

需求:

按照company_id不同分组,然后分别求出相同company_id相邻记录touch_time的差值

SQL:

select r1.company_id,
 r1.touch_time,
 r2.touch_time,
 r1.touch_time - r2.touch_time
 from (select (@rownum := @rownum + 1) as rownum,
  info.company_id,
  info.touch_time
  from sys_touch_info info, (select @rownum := 0) r
  where info.touch_time is not null
  order by info.company_id) r1
 left join (select (@index := @index + 1) as rownum,
   info.company_id,
   info.touch_time
  from sys_touch_info info, (select @index := 0) r
  where info.touch_time is not null
  order by info.company_id) r2
 on r1.company_id = r2.company_id
 and r1.rownum = r2.rownum - 1

结果:

以上这篇Mysql 相邻两行记录某列的差值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/889679.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-14
下一篇 2022-05-14

发表评论

登录后才能评论

评论列表(0条)

保存