一些SQL查询题目的练习

表结构

员工表:

一些SQL查询题目的练习

部门表:

一些SQL查询题目的练习

薪水等级表:

一些SQL查询题目的练习

 

题目

1.统计各部门员工数量 显示部门名称

思路:在使用外连接时,为了保证即便没有员工,部门也一定显示,因此用部门表左外连接员工表(或者员工表右外连接部门表)。

代码:

select dept.deptno, dname, count(empno) as count
from dept left outer join emp
on emp.deptno = dept.deptno
group by deptno

查询结果:

一些SQL查询题目的练习

 

 

 

2.取得每个部门最高薪水的员工名称

思路:首先取得每个部门最高薪水,再将其作为临时表d,和员工表e内连接(交集),条件为部门和薪水都相等,最后为了可读性,按照部门编号排序。

代码:

select e.ename, d.*
from (select deptno, max(sal) as sal from emp group by deptno) d join emp e
on e.deptno = d.deptno and e.sal = d.sal
order by deptno

查询结果:

一些SQL查询题目的练习

 

一些SQL查询题目的练习

上一篇:数据库索引简介


下一篇:sqlmap从入门到精通-第七章-7-22 绕过WAF脚本-space2plus.py&space2randomblank.py