mysql 对分组后求 每组的总数 再求和
时间: 2023-08-26 13:08:59 浏览: 100
MySql分组后随机获取每组一条数据的操作
5星 · 资源好评率100%
可以使用 MySQL 中的嵌套查询语句来实现。
假设有一张表格 `table1`,其中有两个字段 `group_id` 和 `num`,需要对 `group_id` 进行分组,然后对每组中的 `num` 求和,最后再将每组的求和结果相加。
可以使用以下 SQL 语句实现:
```
SELECT SUM(sum_num) AS total_sum
FROM (
SELECT SUM(num) AS sum_num
FROM table1
GROUP BY group_id
) AS sub_query;
```
首先,在内层查询中,使用 `GROUP BY` 对 `group_id` 进行分组,然后使用 `SUM` 对每组中的 `num` 进行求和,得到每组的总数 `sum_num`。
接着,将内层查询的结果作为一个临时表 `sub_query`,在外层查询中使用 `SUM` 对 `sum_num` 进行求和,得到所有组的总和 `total_sum`。
注意,为了避免重名问题,内层查询中使用了别名 `sum_num`,而外层查询中使用了别名 `total_sum`。
阅读全文