文章目录
1. 基本查询回顾
- 显示工资最高的员工姓名和其工作岗位
select ename,job from EMP where sal=(select max(sal) from EMP);
- 显示工资高于平均工资的员工信息
select ename,sal from EMP where sal>(select avg(sal) from EMP);
- 显示平均工资低于2000的部门号和它的平均工资
select deptno, avg(sal) as avg_sal from EMP group by deptno having avg_sal<2000;
- 显示每种岗位的雇员总数,平均工资
select job,count(*), format(avg(sal), 2) from EMP group by job;
WHERE 分组前做筛选
HAVING 分组后做筛选
2. 多表查询
数据来自不同的表,所以需要多表查询。
- 显示雇员名、雇员工资以及所在部门的名字。因为上面的数据来自EMP和DEPT表,因此要联合查询
select EMP.ename, EMP.sal, DEPT.dname from EMP,DEPT where EMP.deptno=DEPT.deptno;
- 显示部门号为10的部门名,员工名和工资
select ename,sal,dname from EMP,DEPT where EMP.deptno=DEPT.deptno and DEPT.deptno=10;
- 显