一、
二、
1、 显示所有部门名
Select dname from dept ;
2、 显示所有雇员的全年收入
Select emp.sal + bonus.sal
From emp.ename = bonus.ename ;
3、 部门为‘sale’的所有员工姓名
Select ename
From emp
Where deptno in (select deptno
From dept
Where dname = ‘sale’) ;
4、 存在员工的部门编号
Select distinct deptno from emp
Where ename is not null and deptno is not null ;
5、 工资超过2000元所有的雇员名字和他们的工资
Select ename , sal
From emp
Where sal > 2000 ;
6、 工资不在1500和2000之间的所有员工
Select ename , sal
From emp
where sal<1500 or sal > 2000 ;
7、 雇员代码为7566的员工名字及其所在部门编号
Select ename , deptno
From emp
Where empno = 7566 ;
8、 显示部门代码为10和30中工资超过1500的雇员和工资
Select ename , sal
From emp
Where (deptno=10 or deptno = 30) and sal > 1500 ;
9、 显示无管理者的雇员名及岗位
Select ename , job
From emp
Where mgr is null ;
10、 查询出sale部门第二个字母不为A的所有员工姓名
Select ename
From emp inner join dept on emp.deptno = dept.deptno
Where dname = ‘sale’ and ename not like ‘_A%’ ;
11、 查询员工平均工资,最高工资,最低工资,总工资,总人
Select avg(sal) as平均工资, max(sal) as最高工资,min(sal) as最低工资,
Sum(sal) as 总工资, count(empno) as 总人数
From emp ;
12、 每个岗位的平均工资
Select avg(sal) , count(empno)
From emp
Group by job ;
13、 大于平均工资的员工姓名,工资
Select ename , sal
From emp
Where sal > (select avg(sal)
From emp) ;
14、 显示管理者的总人数
Select count(distinct (mgr)) as 总人数
From emp ;
15、 雇员工资的最大差额
Select max(sal)-min(sal)
From emp ;
16、 显示部门代码为20的部门名,雇员名,雇员工资,岗位
Select dame , ename , sal , job
From dept inner join emp on dept.deptno = emp.deptno
Where emp.deptno = 20 ;
17、 没有发补助的员工姓名
Select ename from emp
Where ename not in (select ename from bonus ) ;
18、 显示雇员表里的记录总数
Select count (empno)
From emp ;
19、 显示工资大于1500的雇员名,工资,按工资降序排列
Select ename , sal
From emp
Where sal > 1500
Order by sal DESC ;
20、 工资最高的员工名
Select ename
From emp
Where sal in (select max(sal)
From emp) ;
21、 显示雇员scott的管理者
Select mgr
From emp
Where ename = ‘scott’ ;
22、 显示与‘scott’同部门的人员名
Select ename
From emp
Where deptno in (select deptno
From emp where ename = ‘scott’ ) ;
23、 23、显示与‘scott’同部门的人员名,但不显示‘scott’
Select ename
From emp
Where deptno in (select deptno
From emp
Where ename =’scott’)
And ename <> ’scott’ ;
24、 按工作年限从长到短显示员工姓名
Select ename
From emp
Order by hiredate ASC ;
25、 按工作年限大于10年,显示员工姓名
Select ename
From emp
Group by ename , hiredate
Having(extract(year from sysdate)- extract(year from hiredate))>10 ;