mysql怎么写子查询 mysql 子查询( 三 )


1.10号部门的平均工资
SELECT AVG(sal) FROM emp WHERE deptno = 10;
2. 高于上面结果员工信息
SELECT * FROM emp WHERE sal(SELECT AVG(sal) FROM emp WHERE deptno = 10);
-- 多行子查询(innot in any all)anyall
-- 查询出比10号部门任何员工薪资高的员工信息
1. 查询出10号部门最高工资
SELECT MAX(sal) FROM emp WHERE deptno = 10;
2. 得出结果
SELECT * FROM emp WHERE sal(SELECT MAX(sal) FROM emp WHERE deptno = 10);
-- 查询出比10号部门任意一个员工薪资高的所有员工信息 : 只要比其中随便一个工资都可以
SELECT sal FROM emp WHERE deptno = 10;
-- 多列子查询(实际使用较少)in
-- 和10号部门同名同工作的员工信息
1. 查询出10号部门所有人 名字和工作
SELECT ename,job FROM emp WHERE deptno=10;
2. 得出结果
SELECT * FROM emp WHERE (ename,job) IN (SELECT ename,job FROM emp WHERE deptno=10) AND deptno !=10;
-- Select后面接子查询
-- 获取员工的名字和部门的名字
SELECT ename,deptno FROM emp ;
-- from后面接子查询
-- 查询emp表中所有管理层的信息
SELECT DISTINCT mgr FROM emp;
-- where 接子查询
-- 薪资高于10号部门平均工资的所有员工信息
1. 10号部门平均工资
SELECT AVG(sal) FROM emp WHERE deptno=10;
2. 得出结果
SELECT * FROM emp WHERE sal(SELECT AVG(sal) FROM emp WHERE deptno=10);
-- having后面接子查询
-- 有哪些部门的平均工资高于30号部门的平均工资
1. 统计所有的部门的平均工资
SELECT deptno, AVG(sal) FROM emp GROUP BY deptno;
2. 30号部门的平均工资
SELECT AVG(sal) FROM emp WHERE deptno=30;
3.得出结果:
SELECT deptno, AVG(sal) FROM emp GROUP BY deptno HAVING AVG(sal)(SELECT AVG(sal) FROM emp WHERE deptno=30);
-- 列出达拉斯加工作的人中,比纽约平均工资高的人
原文链接mysql怎么写子查询:
MySQL子查询(六)定义:查询中嵌套查询就是子查询
子查询mysql怎么写子查询的本质:
找出工资大于Mark的员工名字和工资
分析:
1.查询出Mark的工资是多少
2.查询出高于1450工资的人
整合成子查询
子查询的特点:
为什么相关子查询的效率极其低下?
结论:
性能排序/优先使用
关联/分组查询无关子查询相关子查询
1. 找出工资比'BLAKE'多的员工
2. 列出薪金高于公司平均薪金的所有员工mysql怎么写子查询,所在部门
3. 查询出工资最低的员工的姓名mysql怎么写子查询,工作,工资
4.列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金、部门名称
或者
5.查找出职位和'MARTIN' 或者'SMITH'一样的员工的平均工资
6. 列出薪金比“BLAKE”或“WARD”多的所有员工的编号、姓名、部门名称、其领导姓名 。
7. 找出各个部门中大于他所在部门平均工资的员工名和工资
8. 查找出收入(工资加上奖金),下级比自己上级还高的员工编号,员工名字 , 员工收入
9. 得到每个月工资总数最少的那个部门的部门编号,部门名称,部门位置
10. 查找出部门10和部门20中,工资最高第3名到工资第5名的员工的员工名字,部门名字,部门位置
11. 以职位分组,找出平均工资最高的两种职位
12. 查询出各部门总薪资,平均薪资,总人数 , 显示部门编号,部门名称与部门总薪资(没有员工的部门也需要统计)
关于mysql怎么写子查询和mysql 子查询的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

推荐阅读