【发布时间】:2021-07-18 16:40:46
【问题描述】:
【问题讨论】:
标签: mysql select difference delta
【问题讨论】:
标签: mysql select difference delta
一个只有从 0 到 9 的整数值的表的简单示例:
select
i,
lead(i) over (order by i) as "LEAD",
lag(i) over (order by i) as "LAG"
from numm
order by i;
会输出这个:
+---+------+------+
| i | LEAD | LAG |
+---+------+------+
| 0 | 1 | NULL |
| 1 | 2 | 0 |
| 2 | 3 | 1 |
| 3 | 4 | 2 |
| 4 | 5 | 3 |
| 5 | 6 | 4 |
| 6 | 7 | 5 |
| 7 | 8 | 6 |
| 8 | 9 | 7 |
| 9 | NULL | 8 |
+---+------+------+
【讨论】:
over (order by ....) 是表达式的一部分,因此您需要执行 lag(i) over order by i) - i(但您可以在 1 分钟内自己测试...?