Group By分组
depart表
现在想要查询出汽车系 和软件系的个数,这就用到分组
SELECT xname,COUNT(*) FROM depart
GROUP BY xname
1.count()是聚合函数,对于返回的结果集,一行行地判断,累计值加1,最后返回累计值,count()、count(主键ID)和count(1)表示返回满足条件的结果集的总行数。
常用聚合函数
count() 计数
sum() 求和
avg() 平均数
max() 最大值
min() 最小值
2.GROUP BY我们可以先从字面上来理解,GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,
查询结果就出来了,汽车系的为2个,软件系的为1个… 查询结果也正确…分组完成
where和having的区别
相同点:where和having都是sql用于条件判断的
不同点:进行group by分组之后 然后在进行条件判断,这个时候必须用having进行判断,不能用where判断,
分组之后一定不能出现where