如何在MySQL中从具有累积值的列中创建具有递增值的列?

亨德里克:

表1包含一列具有累计值(所有正整数)的列:

id ValuesCum
1  5
2  8
3  20

我想写一条语句,返回每行增加值的额外列。输出应如下所示:

id ValuesCum ValuesInc
1  5         (5)
2  8         3
3  20        12

有人对此有解决方案吗?

专线小巴:

如果您正在运行MySQL 8.0,则可以lag()为此使用窗口函数

select
    t.*,
    ValuesCum - lag(ValuesCum, 1, 0) over(order by id) ValuesInc
from mytable t

在早期版本中,另一种方法是相关子查询:

select
    t.*,
    ValuesCum - (
        select coalesce(max(t1.ValuesCum), 0)
        from mytable t1
        where t1.id < t.id
    ) ValuesInc

from mytable t

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果列值具有自定义模板,如何在MySQL中搜索递增值?

如何在Swift中创建具有递增值的数组?

如何在数据框中添加具有递增值的列,该值由全数字和另一列具有随机数组成

根据其他列中的值,在数据框中创建具有递增值的新列

如何在MySQL中创建具有多个带有随机值的列的大表?

创建具有递增值的字典

具有相同ID的列中的值的累积总和

MYSQL-更新具有递增值的列,该列将在每次满足条件时重置

如何在现有数据框中创建具有独立行值的列

如何在与mysql中的旧值具有相同ID的列中插入新值

如何在Android中创建具有多个列的表?

如何在MySQL表中显示具有特定列值的所有行?

如何在R中删除具有相同值的列

如何在Python中添加具有字典值的列

如何在MySQL中检查列值是否为NULL或具有DEFAULT值

如何在 Firebird 中自动检测具有自动递增数据类型的列?

如何在具有列表值的列的熊猫中创建多个线图?

如何在pyspark中创建具有随机值的新列?

如何在Linux中创建具有重复的值序列的2列?

如何在pyspark数据框中创建具有列表值总和的列

如何在Excel工作表中创建具有相应值的新列

如何在 SharePoint 列表中创建具有多个值的选择列?

如何制作一个具有100个值但具有递增值的表?

如何创建在MySQL中始终具有默认值的自动生成的列?

如何在MySql中创建具有100多个列的表

如何在MySQL中对具有数字值的列进行排序

如何在mysql的多列中查找具有相同值的行

如何在 df 中创建一个新列,在所选列之间具有最小值?

如何在Oracle中为1个列创建具有特定值的约束唯一多列?