牛骨文教育服务平台(让学习变的简单)
博文笔记

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

创建时间:2014-05-06 投稿人: 浏览次数:15433
SELECT	 
		t.report_date
		,t.user_id		
	FROM 
	my_table t
	GROUP BY t.user_id,t.report_date

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

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

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

SELECT COUNT(*) FROM (SELECT	 
		t.report_date
		,t.user_id		
	FROM 
	my_table t
	GROUP 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_id		
	FROM 
	my_table t
	GROUP BY t.user_id
SELECT COUNT(DISTINCT user_id) FROM my_table
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。