--排序数据
--单一字段排序
--按照薪水由小到大排序
--排序采用order by子句
select * from emp sal order by sal;
--按工资大于1500的员工进行小道大排序
select * from emp where sal > 1500 order by sal;
--手动指定排序顺序
-- 手动指定按照薪水由小到大排序
select * from emp order by sal asc;
--手动指定按照薪水由大到小排序
select * from emp order by sal desc;
--多个字段排序
-- 按照薪水和姓名倒序
--如果采用多个字段排序,如果根据第一个字段排序重复了,会根据第二个字段排序
select * from emp order by sal desc,ename desc;
--使用字段的位置来排序
-- 按照薪水升序
select * from emp order by 6;
--分组查询
-- 取得每个工作岗位的工资合计,要求显示岗位名称和工资合计
select job, sum(sal) from emp group by job;
--having 如果想对分组数据再进行过滤需要使用having子句
--取得每个岗位的平均工资大于2000
select job, avg(sal) from emp group by job having avg(sal) >2000;
分组函数的执行顺序:
1、 根据条件查询数据
2、 分组
3、 采用having过滤,取得正确的数据