1 /* 2 分组查询:以部门编码为分组依据,查询每个部门有多少员工 3 */ 4 select deptid,count(eid) 5 from emp 6 group by deptid 7 --需要注意的是:select子句后面的所有项如果不是聚合函数,那么必须在group by 子句中列出 8 --如:以部门编号及性别分组 9 select deptid,sex,count(eid) 10 from emp 11 group by deptid,sex 12 --分组后的过滤:列举部门人数高于30人的部门编号及人数 13 select deptid,count(eid) as perno 14 from emp 15 group by deptid 16 having COUNT(eid)>30
当然count(eid)在数据记录不多的时候也常常写成count(*),其实用count(主键)方式来写更加高效;
Sql Server2008温故而知新系列08:查询-分组查询(group by)及过滤(having)以及having与where之间的小区别
原文:https://www.cnblogs.com/azrealer/p/11870842.html