MySQL 如何使用MySQL SUM()函数计算列的不同值的总和?
为了计算列的不同值的总和,我们可以在列名后面使用“DISTINCT”关键字。为了理解对于不同的值使用SUM()函数,考虑一个“employee_tbl”表,它具有以下记录 −
mysql> SELECT * FROM employee_tbl;
+------+------+------------+--------------------+
| id | name | work_date | daily_typing_pages |
+------+------+------------+--------------------+
| 1 | John | 2007-01-24 | 250 |
| 2 | Ram | 2007-05-27 | 220 |
| 3 | Jack | 2007-05-06 | 170 |
| 3 | Jack | 2007-04-06 | 100 |
| 4 | Jill | 2007-04-06 | 220 |
| 5 | Zara | 2007-06-06 | 300 |
| 5 | Zara | 2007-02-06 | 350 |
+------+------+------------+--------------------+
7 rows in set (0.00 sec)
现在,假设根据上表您想要计算所有daily_typing_pages不同值的总和,那么您可以使用以下命令来实现 −
mysql> SELECT SUM(DISTINCT daily_typing_pages)
-> FROM employee_tbl;
+-------------------------+
| SUM(daily_typing_pages) |
+-------------------------+
| 1390 |
+-------------------------+
1 row in set (0.00 sec)
上面的结果集显示,带有DISTINCT关键字的MySQL SUM()函数仅计算不同的记录总和,即它仅将值“220”添加一次。
阅读更多:MySQL 教程
极客教程