查出每个部门的工资前三的员工信息
目录
一.建员工信息表u_info:
1.建表:
2.插入员工数据:
二.建部门表department:
1.建表:
2.插入部门数据:
三.表内容:
四.要求及实现:
1.要求:
2.SQL如实现步骤下:
1).先用员工信息表一表多用,查询出工资前三的员工信息
2).将上述结果定义为表c,与部门表连接查询:
结束啦!!!!!
一.建员工信息表u_info:
1.建表:
CREATE TABLE `u_info` (`id` int(11) NOT NULL AUTO_INCREMENT,`name1` varchar(255) DEFAULT NULL,`depar_id` int(11) DEFAULT NULL,`salary` varchar(10) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=99 DEFAULT CHARSET=utf8mb4;
2.插入员工数据:
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('李一', 1, '56000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王二', 2, '56000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王二', 2, '16000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王海', 2, '55000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王东', 3, '46000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王南', 1, '52000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王丁', 3, '76000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王西', 2, '54000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('李山', 3, '56100');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('王潢江', 2, '5000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('柳传志', 3, '51100');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('习海', 2, '11000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('徐支', 1, '20000');
INSERT INTO `mkmk_oor`.`u_info`(`name1`, `depar_id`, `salary`) VALUES ('唐主', 1, '26000');
二.建部门表department:
1.建表:
CREATE TABLE `department` (`id` int(11) NOT NULL,`depart_name` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2.插入部门数据:
INSERT INTO `mkmk_oor`.`department`(`id`, `depart_name`) VALUES (1, '风控部');
INSERT INTO `mkmk_oor`.`department`(`id`, `depart_name`) VALUES (2, '运营部');
INSERT INTO `mkmk_oor`.`department`(`id`, `depart_name`) VALUES (3, '开发部');
三.表内容:
员工信息表内容: 部门表:
四.要求及实现:
1.要求:
要求:根据以上表查询出每个部门工资前三的员工信息和所属部门名
2.SQL如实现步骤下:
1).先用员工信息表一表多用,查询出工资前三的员工信息
SELECT a.*
from u_info a,u_info b
where b.depar_id=a.depar_id
and a.salary<=b.salary
GROUP BY
a.id,a.name1,a.depar_id,a.salary
HAVING count(*)<=3
ORDER BY
a.id,a.name1,a.depar_id,a.salary
查询如图:
2).将上述结果定义为表c,与部门表连接查询:
SELECT c.*,d.depart_name from #这是上面sql的开始
(SELECT a.*
from u_info a,u_info b
where b.depar_id=a.depar_id and a.salary<=b.salary
GROUP BY
a.id,a.name1,a.depar_id,a.salary
HAVING count(*)<=3) c,
#这是sql的结束,重新定义为表cdepartment d
where c.depar_id=d.id
#下面的对结果进行排序一下。你不排序也可以,看你的个人爱好
ORDER BY c.depar_id,c.salary desc;
运行结果:
结束啦!!!!!
查出每个部门的工资前三的员工信息相关推荐
- Oracle查询工资前三的员工信息
--创建去重后的工资排序 create or replace view e2 as select distinct sal from emp order by sal desc--查询工资前三 --s ...
- 查询每个部门工资前三名的员工信息
问:Oracle的EMP表,查询每个部门工资前三名的员工信息,如何写?? 解答:(通用sql) [java] view plain copy select deptno, ename, sal f ...
- 查出每个部门的出勤率前三位的员工
啊啊啊啊啊,昨天去海底捞面试,丢死人啦,因为我好久好久没用group by了. 面试问题:一张表,里面存放着各部门员工的应出勤天数,实际出勤天数,查出每个部门出勤率最高的三名员工及平均出勤率. #my ...
- 2022-12-05:部门工资前三高的所有员工。编写一个SQL查询找出每个部门中收入前三高的员工 。 +------------+----------+--------+ | Department |
2022-12-05:部门工资前三高的所有员工.编写一个SQL查询找出每个部门中收入前三高的员工 . ±-----------±---------±-------+ | Department | Em ...
- 求助!查询比 销售部 所有人工资都高的员工信息
先放表 问题:查询比 销售部 所有人工资都高的员工信息? 我先查出销售部的工资列表: select wagesfrom empwhere dept_id = (select idfrom deptwh ...
- 对应sql建表_图解SQL面试题:如何查找工资前三高的员工
[题目] "成绩表"记录了学生的学号,学生选修的课程,以及对应课程的成绩. 为了对学生成绩进行考核,现需要查询每门课程的前3高成绩. 注意:如果出现并列第一的情况,则同为第一名. ...
- Mysql 查询工资前三高的员工
题目 表: Employee +--------------+---------+ | Column Name | Type | +--------------+---------+ | id ...
- mysql 各部门前三薪资_选出每个部门薪资前三的员工的信息
部门表: 最终SQL如下: GROUP BY dep.id ,emp.id,emp.name ,emp.salary,dep.name HAVING COUNT(*)<=3 ORDER BY e ...
- 查找工资前三高的员工
[题目] "成绩表"记录了学生的学号,学生选修的课程,以及对应课程的成绩. 为了对学生成绩进行考核,现需要查询每门课程的前3高成绩. 注意:如果出现并列第一的情况,则同为第一名. ...
最新文章
- 吐血整理:机器学习的30个基本概念,都在这里了(手绘图解)
- 图解SSL/TLS协议
- cgroup 介绍 与使用
- 第二关练习题总结完结
- win7降低屏幕亮度_深度解析:Redmi K20 Pro 第七代屏幕指纹技术
- 股神巴菲特揭示致富的十大秘籍[转]
- 长寿的十个秘诀 至少选择一个坚持实施
- Delphi 与 DirectX 之 DelphiX(39): TDIB.Sharpen();
- 本田思域自动挡的使用技巧
- Netty源码分析第3章(客户端接入流程)----第3节: NioSocketChannel的创建
- c语言函数的英文全称
- 第六天:对项目后端日志存储
- 修改Matlab主题的几种方式
- 理解 Mach-O 并提高程序启动速度
- 【下载所有XKCD漫画】 详细解析
- linux 下打包可执行程序
- 17个品牌,113款5G手机,5G离我们越来越近。
- 复旦大学计算机学院教师简介,复旦大学计算机科学技术学院导师教师师资介绍简介-危辉...
- 学生运动会成绩数据库
- 32位/64位系统,jdk32位,64位,32/64位jdk编译出来的class和eclipse 32位和64位
热门文章
- 杰理之杰理充电仓方案选型【篇】
- microsoft微软登录新账户/切换账户失败,一直转圈,提示“你似乎没有连接到internet”
- 【转】25.windbg-!gle、g(错误码、g系列)
- java akka 实战_《Akka实战:快速构建高可用分布式应用》(杜云飞)【摘要 书评 试读】- 京东图书...
- html5 在线 ppt 制作软件,使用HTML5制作网页.ppt
- jQuery_03_操作HTML和CSS
- rk3188调试记录
- proj Java_proj 一个炫酷的飞机大战java游戏,很好玩的,很酷炫 用了 的图形界面 Games 256万源代码下载- www.pudn.com...
- python返回字符在字符串的位置_返回单词在字符串中的位置的函数
- Linux下运行War3(转)