今天在使用MYSQL,遇到一个问题。
GROUP BY分组后,使用COUNT统计分组结果后,实际得出的是每个分组对应的记录条数。
而我想得到的是分组后的记录总数。
如果需要统计分组后的记录总数,可以使用子查询。
方法如下:
例如:SELECT count(*) FROM mobile GROUP BY phone
数据结构是:
id phone content state
1 1372104xxxx 内容 0
2 1372104xxxx 内容 1
3 1372105xxxx 内容 0
查询结果是:
count(*)
2
1
使用子查询:
SELECT COUNT(*) FROM (SELECT count(*) FROM mobile GROUP BY phone) tmp
查询结果是:
count(*)
2
GROUP BY分组后,使用COUNT统计分组结果后,实际得出的是每个分组对应的记录条数。
而我想得到的是分组后的记录总数。
如果需要统计分组后的记录总数,可以使用子查询。
方法如下:
例如:SELECT count(*) FROM mobile GROUP BY phone
数据结构是:
id phone content state
1 1372104xxxx 内容 0
2 1372104xxxx 内容 1
3 1372105xxxx 内容 0
查询结果是:
count(*)
2
1
使用子查询:
SELECT COUNT(*) FROM (SELECT count(*) FROM mobile GROUP BY phone) tmp
查询结果是:
count(*)
2