MYSQL使用group by,如何查询出总记录数

来源:互联网 发布:素描的诀窍知乎 编辑:程序博客网 时间:2024/04/29 19:23
SELECT t.report_date,t.user_idFROM my_table tGROUP BY t.user_id,t.report_date

比如有这样一条SQL,根据t.user_id,t.report_date两个字段统计

这样前端页面能展示数据,但往往需要一个总记录数,在有分页的情况下用到

一种解决方法是在外面套一层,然后对其count(*)

SELECT COUNT(*) FROM (SELECT t.report_date,t.user_idFROM my_table tGROUP BY t.user_id,t.report_date ) AA

 

还有一种简单的方法可以这样写

SELECT COUNT(DISTINCT report_date,user_id)FROM my_table

这样就针对上面的group by查询显示其总记录数
 如果只对user_id group by

SELECT t.user_idFROM my_table tGROUP BY t.user_id
SELECT COUNT(DISTINCT user_id) FROM my_table
0 0