MySQL 选择 "accumulated"列

标签 mysql

除了“累积”列之外,我不确定如何调用它。

我有一个 MySQL 表,其中有一列看起来像

+---+
|val|
+---+
| 1 |
| 4 |
| 6 |
| 3 |
| 2 |
| 5 |
+---+

我想做一个查询,以便我得到这一列以及另一列,这是迄今为止该列中所有行的总和。换句话说,选择将产生

+---+----+
|val| sum|
+---+----+
| 1 |  1 |
| 4 |  5 |
| 6 | 11 |
| 3 | 14 |
| 2 | 16 |
| 5 | 21 |
+---+----+

有谁知道我会怎么做,你是否可以在 MySQL 中做到这一点?

最佳答案

怎么样

set @running_sum=0
select val, @running_sum:=@running_sum + val from your_table;

我是 mysql 的新手,所以请对我所说的持保留态度。

你想要的是运行总和。有一些google results .

关于MySQL 选择 "accumulated"列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1135627/

相关文章:

mysql - 在 Hadoop 2.6.0 中执行 Sqoop import 命令时遇到问题

php - 如何通过 PHP 在 mysql 中插入外部文件的一部分?

php - 如何从日期时间列表中找到最接近的日期时间?

mysql - 如何反序列化 postmeta 并在 wp_query 中将其用于搜索过滤器

mysql - MyISAM 在几乎只读的表中会更好吗?

mysql - 包含万亿记录的数据库表的查询计划

javascript - 如何对另一个文件进行 POST 并将该文件加载到主文件中?

java - mysql中特定的字符串自动递增

mysql - 将另一个可变长度列添加到具有可变长度行的表中是否会进一步影响性能?

php - 是否可以使用 Joomla 一次运行多个更新查询?