Mysql练习题13道(21-33题)

这篇博客通过13道实例题目展示了MySQL在员工薪资、部门信息、工作匹配、工资对比等方面的复杂查询技巧,包括查找高薪员工、部门平均薪资、相同职位员工、部门详情等,还涉及到员工加薪策略的讨论。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

列出薪金高于公司平均薪金的所有员工, 所在部门, 上级领导, 雇员的工资等级

select e.ename '员工',d.dname,t.ename '领导',s.grade from emp e join dept d on e.deptno=d.deptno left join emp t on e.mgr=t.empno join salgrade s on e.sal between s.losal and s.hisal where e.sal > (select avg(sal) from emp);

+--------+------------+--------+-------+
| 员工   | dname      | 领导   | grade |
+--------+------------+--------+-------+
| FORD   | RESEARCH   | JONES  |     4 |
| SCOTT  | RESEARCH   | JONES  |     4 |
| CLARK  | ACCOUNTING | KING   |     4 |
| BLAKE  | SALES      | KING   |     4 |
| JONES  | RESEARCH   | KING   |     4 |
| KING   | ACCOUNTING | NULL   |     5 |
+--------+------------+--------+-------+

列出与"SCOTT" 从事相同工作的所有员工及部门名称

select e.ename,d.dname,e.job from emp e join dept d on e.deptno = d.deptno where e.job = (select job from emp where ename='scott') and e.ename <> 'scott';

+-------+----------+---------+
| ename | dname    | job     |
+-------+----------+---------+
| FORD  | RESEARCH | ANALYST |
+-------+----------+---------+

列出薪金等于部门 30 中员工的薪金的其他员工的姓名和薪金

select e.ename,e.sal from emp e join (select distinct sal from emp where deptno = 30) t on e.sal = t.sal and e.deptno <> 30;


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值