
关于oracle的问题,有emp,dept,salgrade 三个表。完成以下问题。
emp表的结构说明如下emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门...
emp表的结构说明如下
emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门编号)
1.显示部门号为10 的部门名、员工名和工资.
2.显示各个员工的姓名,工资,及其工资的级别
3.显示员工BLAKE 的上级领导的姓名.
4.显示与scott同一部门的所有员工.
5. 显示工资比部门 30 的所有员工的工资高的员工的姓名、工资和部门号.
6. 查询与smith 部门和岗位完全相同的所有雇员.
7. 显示高于部门平均工资的员工的信息.
8. 查询部门工资总和高于员工工资总和1/3的部门名及工资总和(选作).
答的好的会追加分数 展开
emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门编号)
1.显示部门号为10 的部门名、员工名和工资.
2.显示各个员工的姓名,工资,及其工资的级别
3.显示员工BLAKE 的上级领导的姓名.
4.显示与scott同一部门的所有员工.
5. 显示工资比部门 30 的所有员工的工资高的员工的姓名、工资和部门号.
6. 查询与smith 部门和岗位完全相同的所有雇员.
7. 显示高于部门平均工资的员工的信息.
8. 查询部门工资总和高于员工工资总和1/3的部门名及工资总和(选作).
答的好的会追加分数 展开
展开全部
1.显示部门号为10 的部门名、员工名和工资
select deptno, ename, sal
from emp
where deptno = 10;
2. 工资级别是什么?在表中怎么体现?
select ename, sal
from emp;
3. 显示员工BLAKE 的上级领导的姓名
select e1.ename
from emp e1
where e1.empno = (select e2.mgr
from emp e2
where e2.ename = 'BLAKE');
4.显示与scott同一部门的所有员工
select e1.*
from emp e1
where e1.deptno = (select e2.deptno
from emp e2
where e2.ename = 'scott');
5.显示工资比部门 30 的所有员工的工资高的员工的姓名、工资和部门号
select e1.ename, e1.sal, e1.deptno
from emp e1
where e1.sal >all (select e2.sal
from emp e2
where e2.deptno = 30);
6.查询与smith 部门和岗位完全相同的所有雇员
select e1.*
from emp e1
where e1.dept = (select e2.dept from emp e2 where e2.ename = 'smith')
and e1.job = (select e3.job from emp e3 where e3.ename = 'smith')
7.显示高于部门平均工资的员工的信息
select e1.*
from emp e1
where e1.sal > (select avg(e2.sal)
from emp e2
where e1.deptno = e2.deptno
group by e2.deptno);
8.查询部门工资总和高于员工工资总和1/3的部门名及工资总和
select e1.deptno, sum(e1.sal)
from emp e1
group by e1.deptno
having sum(e1.sal) > (select sum(e2.sal) / 3.0
from emp e2);
select deptno, ename, sal
from emp
where deptno = 10;
2. 工资级别是什么?在表中怎么体现?
select ename, sal
from emp;
3. 显示员工BLAKE 的上级领导的姓名
select e1.ename
from emp e1
where e1.empno = (select e2.mgr
from emp e2
where e2.ename = 'BLAKE');
4.显示与scott同一部门的所有员工
select e1.*
from emp e1
where e1.deptno = (select e2.deptno
from emp e2
where e2.ename = 'scott');
5.显示工资比部门 30 的所有员工的工资高的员工的姓名、工资和部门号
select e1.ename, e1.sal, e1.deptno
from emp e1
where e1.sal >all (select e2.sal
from emp e2
where e2.deptno = 30);
6.查询与smith 部门和岗位完全相同的所有雇员
select e1.*
from emp e1
where e1.dept = (select e2.dept from emp e2 where e2.ename = 'smith')
and e1.job = (select e3.job from emp e3 where e3.ename = 'smith')
7.显示高于部门平均工资的员工的信息
select e1.*
from emp e1
where e1.sal > (select avg(e2.sal)
from emp e2
where e1.deptno = e2.deptno
group by e2.deptno);
8.查询部门工资总和高于员工工资总和1/3的部门名及工资总和
select e1.deptno, sum(e1.sal)
from emp e1
group by e1.deptno
having sum(e1.sal) > (select sum(e2.sal) / 3.0
from emp e2);

2025-04-08 广告
Stata系列软件全国授权代理——北京友万。北京友万信息科技有限公司,总部设在北京市昌平科技园区,是一家专注于引进国内外软硬件产品的中关村高新技术企业。公司拥有多项自主研发的数据平台,依托自身经验丰富的技术团队资源,为不同领域的客户提供全面...
点击进入详情页
本回答由友万科技提供
展开全部
1. select ename,dname,sal from emp natural join dept;
2. select ename,sal,grade from emp join salgrade on (emp.sal >=losal and emp.sal<=hisal);
3. select ename from emp where empno=(select MGR from emp where ename='BLAKE');
4. select * from emp where deptno=(select deptno from emp where ename='SCOTT');
5. select ename,sal,deptno from emp where sal > (select max(sal) from emp where deptno=30);
6. select * from emp where (deptno,job)=(select deptno,job from emp where ename='SMITH') and ename<>'SMITH';
7. select * from emp join (select deptno,avg(sal) avgsal from emp group by deptno) t on emp.deptno=t.deptno and emp.sal>t.avgsal;
8. select dname,sum(sal) from emp join dept on emp.deptno=dept.deptno group by dname having sum(sal) > (select sum(sal) from emp)/3;
2. select ename,sal,grade from emp join salgrade on (emp.sal >=losal and emp.sal<=hisal);
3. select ename from emp where empno=(select MGR from emp where ename='BLAKE');
4. select * from emp where deptno=(select deptno from emp where ename='SCOTT');
5. select ename,sal,deptno from emp where sal > (select max(sal) from emp where deptno=30);
6. select * from emp where (deptno,job)=(select deptno,job from emp where ename='SMITH') and ename<>'SMITH';
7. select * from emp join (select deptno,avg(sal) avgsal from emp group by deptno) t on emp.deptno=t.deptno and emp.sal>t.avgsal;
8. select dname,sum(sal) from emp join dept on emp.deptno=dept.deptno group by dname having sum(sal) > (select sum(sal) from emp)/3;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询