MySQL 选择累计(运行总和)列?
mysqlmysqli database
要选择累计列,我们首先创建一个演示表。创建表的查询如下 −
mysql> create table accumulatedDemo -> ( -> Value int -> ); Query OK, 0 rows affected (0.58 sec)
使用 insert 命令在表中插入一些记录。 查询语句如下 −
mysql> insert into accumulatedDemo values(10); Query OK, 1 row affected (0.21 sec) mysql> insert into accumulatedDemo values(15); Query OK, 1 row affected (0.09 sec) mysql> insert into accumulatedDemo values(20); Query OK, 1 row affected (0.13 sec) mysql> insert into accumulatedDemo values(25); Query OK, 1 row affected (0.12 sec) mysql> insert into accumulatedDemo values(45); Query OK, 1 row affected (0.14 sec)
使用 select 语句显示表中的所有记录。查询如下 −
mysql> select *from accumulatedDemo;
这是输出 −
+-------+ | Value | +-------+ | 10 | | 15 | | 20 | | 25 | | 45 | +-------+ 5 rows in set (0.00 sec)
以下是选择累积列的查询 −
mysql> set @previousSum =0; Query OK, 0 rows affected (0.00 sec) mysql> select Value, @previousSum: =@previousSum+ Value AS AccumulatedColumn from accumulatedDemo;
这是输出 −
+-------+-------------------+ | Value | AccumulatedColumn | +-------+-------------------+ | 10 | 10 | | 15 | 25 | | 20 | 45 | | 25 | 70 | | 45 | 115 | +-------+-------------------+ 5 rows in set (0.00 sec)