1.GROUP BY子句
在SELECT 列表中所有未包含在组函数中的列都应该包含在GROUP BY 子句中.
如下:
SELECT deptno,AVG(sal) from emp GROUP BY deptno;(deptno为没有包含在组函数的列)
以下查询是错误的:
SELECT a,b,c,AVG(sal) from emp GROUP BY a,b;(c没有写在group by 后面)
===========================================================================================
多个列的分组:先按照第一个列分组,如果相同,再第二个列分组,以此类推
===========================================================================================
2.过滤分组:HAVING 子句
使用HAVING过滤分组
1.行已经被分组;
2.使用了组函数;
如:
select deptno,avg(sal) from emp group by deptno having avg(sal)>2000;
==========================================================================================
where 后面不能使用多行函数;
原文地址:https://www.cnblogs.com/curedfisher/p/11756740.html
时间: 2024-10-09 19:51:26