mysql - 请问如何统计group by 后的结果

查看:566
本文介绍了mysql - 请问如何统计group by 后的结果的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

比如这条语句可以统计查询总数

SELECT COUNT(`id`) AS `num` FROM `test`;

那如果加了一句group by 之后就不对了

SELECT COUNT(`id`) AS `num` FROM `test` GROUP BY `id`;

请问我想要知道GROUP BY出来有多少行数据,怎么做

解决方案

统计GROUP BY后的数据行数:

SELECT count(1) FROM (
    SELECT * FROM `test` GROUP BY `id`
) AS tmp;

统计id相同出现的次数:

SELECT id, count(1) FROM `test` GROUP BY `id`;

统计GROUP BY后的数据总和:

SELECT sum(c) FROM (
    SELECT count(1) AS c FROM `test` GROUP BY `id`
) AS tmp;

不清楚你想要查什么,但猜测是第一条SQL。

这篇关于mysql - 请问如何统计group by 后的结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆