在Mysql中,我们经常会遇到统计和分组的问题。下面说几个常用的方式
count() 代表统计所有的不为0的行数,有参数就是那一列不为0的行数。
如:SELECT COUNT() AS 总数 FROM 表;
我们常用DISTINCT来去除重复数据,与COUNT连用
SELECT COUNT(DISTINCT NAME) AS a FROM 表;
count经常和GROUP BY分组一起使用,统计每组的个数
SELECT class,count(*) FROM 表 GROUP BY class;
其中,group BY 可以是多个参数,其中的参数在前面必须显示。
另外,AVG,MAX,MIN也经常和GROUP BY一起用,代表每个组的最大值等
HAVING BY子句必须跟在group by后面,代表对分组的数据进行过滤。
如:SELECT class,CHENGJI FROM 表 group by class having by chengji>60
对每个班级成绩大于60的显示。