MySQL 更新运行最大值

标签 mysql sql select sql-update max

我正在尝试创建一个查询,该查询根据另一列的运行最大值(例如本例中的分数)更新运行最大值列。

查询前的表

time-----score---------current max
1-----------5--------------null
2-----------6--------------null
3-----------3--------------null
4-----------4--------------null
5-----------5--------------null
6-----------7--------------null
7-----------8--------------null

查询后的表格

time-----score---------current max
1-----------5--------------5
2-----------6--------------6
3-----------3--------------6
4-----------4--------------6
5-----------5--------------6
6-----------7--------------7
7-----------8--------------8

如有任何建议,我们将不胜感激。

最佳答案

select @max := case when score > @max 
                    then score
                    else @max 
               end as curr_max,
       time,
       score
from your_table, (select @max := 0) m

关于MySQL 更新运行最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20883115/

相关文章:

c# - 在 XAML 应用程序中建立 SQL 连接 - 接下来要采取的步骤

mysql - Rails 在保存到数据库之前压缩数据

mysql - SQL 获取当前日期和特定时间

mysql - 如何在 SQL 中编写此 UPDATE,以更新具有不同 WHERE 条件的多行

javascript - 从本地读取txt文件放入数组并数组放入<select>

mysql - 为什么使用MySQL时时间戳是 "allow null"?

php - Yii2 事务 - 更新先前未提交的值加上新的提交值?

mysql - 按 user_ids 的 VIEW 列表排序

jquery parseFloat 将 val 分配给字段

python - 在 Pandas 数据框中选择连续和非连续的多列