有大佬指导给下正确的sql答案吗??

sql语句

列出薪金高于平均薪金的所有员工的信息、所在部门名称、上级领导、工资等级
分析过程:
需要的表
|- emp:查询平均薪金(姓名,薪金)
|-dept:部门名称
|-emp:上级领导
|-salgrade:工资等级
关联条件
e.deptno = d.deptno
m.mgr = e.empno
e.sal between losal and hisal
步骤1:查询大于平均薪金的员工信息
SELECT e.empno, e.ename, e.sal, e.hiredate
FROM emp e
WHERE e.sal > ALL(SELECT avg(sal)
FROM emp );
步骤2:查查步骤1中人的部门名称
SELECT e.empno, e.ename, e.sal, e.hiredate, d.dname
FROM emp e, dept d
WHERE e.sal > ALL(SELECT avg(sal)
FROM emp )
AND e.deptno = d.deptno;
步骤3:查查步骤1中人上级领导名字
SELECT e.empno, e.ename, e.sal, e.hiredate, d.dname, m.ename mgr
FROM emp e, dept d, emp m
WHERE e.sal > ALL(SELECT avg(sal)
FROM emp )
AND e.deptno = d.deptno
AND m.empno(+) = e.mgr;
步骤3:查查步骤1中人的工资等级
SELECT e.empno, e.ename, e.sal, e.hiredate, d.dname, m.ename mgr, s.grade salgrade
FROM emp e, dept d, emp m, salgrade s
WHERE e.sal > ALL(SELECT avg(sal)
FROM emp )
AND e.deptno = d.deptno
AND m.empno(+) = e.mgr
AND e.sal between s.losal and s.hisal;
查询结果截图
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值