求MYSQL数据库中上下相邻两行的差

求MYSQL数据库中上下相邻两行的差,第1张

这个结果要从第一个开始吗?那样就有点复杂了。这个行不行,结果是从第二行开始的:

mysql> set @last_id := -1

Query OK, 0 rows affected (0.00 sec)

mysql> select id, A, B, result

    -> from

    -> (

    ->     select

    ->         table1.*,

    ->         @last_id,

    ->         if(@last_id < 0, null, id - @last_id) as result,

    ->         @last_id := id

    ->     from

    ->         table1

    -> ) as tmp

    -> 

+----+------+------+--------+

| id | A    | B    | result |

+----+------+------+--------+

|  1 |    2 |    1 |   NULL |

| 21 |    1 |    1 |     20 |

| 33 |    3 |    2 |     12 |

+----+------+------+--------+

3 rows in set (0.00 sec)

工具/材料:Management Studio。

1、首先在桌面上,点击“Management Studio”图标。

2、然后在该界面中,点击左上角“新建查询”选项。

3、之后在该界面中,输入SQL语句“select MoneyA - MoneyB from test”。

4、最后在该界面中,显示两个值之间的差。


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

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存