mysql获取group by内部可以获取到某字段的记录分组统计总数,而无法统计出分组的记录数。

因此可以配合mysql自带的SQL_CALC_FOUND_ROWS和FOUND_ROWS()函数可以实现。

SELECT SQL_CALC_FOUND_ROWS t3.id, a,bunch,of,other,stuff FROM t1, t2, t3 WHERE(associate t1,t2,and t3 with each other) GROUPBY t3.id LIMIT 10,20
SELECT FOUND_ROWS() as count;

使用以上两个语句即可完成满足group by的总记录行数。另附:group by 的简单使用方法:

'SELECT column_id,count(*) as count FROM my_table group by column_id';

官方文档:http://dev.mysql.com/doc/refman/5.6/en/group-by-functions.html