从 MySQL 表中获取多行(非全部)值的总和?


您可以使用 MySQL 的聚合函数 SUM() 来实现此目的。让我们首先创建一个表 -

mysql> create table DemoTable
(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Amount int
);
Query OK, 0 rows affected (0.65 sec)

使用 insert 命令在表中插入一些记录 -

mysql> insert into DemoTable(Amount) values(400);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable(Amount) values(10);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable(Amount) values(50);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable(Amount) values(500);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(Amount) values(80);
Query OK, 1 row affected (0.09 sec)

以下是使用 select 语句从表中显示所有记录的查询 -

mysql> select *from DemoTable;

这将产生以下输出 -

+----+--------+
| Id | Amount |
+----+--------+
| 1  | 400    |
| 2  | 10     |
| 3  | 50     |
| 4  | 500    |
| 5  | 80     |
+----+--------+
5 rows in set (0.00 sec)

以下是获取 MySQL 表中(非全部)行之和的查询 -

mysql> select sum(Amount) from DemoTable where Id in(1,4,5);

这将产生以下输出 -

+-------------+
| sum(Amount) |
+-------------+
| 980         |
+-------------+
1 row in set (0.00 sec)

更新于:30-Jul-2019

799 浏览量

开启你的 职业生涯

完成课程即可获得认证

开始
广告信息