- 2
- 0
- 约8.84千字
- 约 38页
- 2019-11-06 发布于广东
- 举报
子查询综合应用 第二种方案:联接查询 第一步:过滤历史工资记录 select * from Salary where StartTime in (select MAX(StartTime) from Salary group by EmpNo)) as t 为结果集起别名,此结果集将作为一个虚表与员工表进行联接查询 子查询综合应用 第二种方案:联接查询 第二步:将员工表与第一步查询的结果集进行联接 select t.*,e.DeptNo from Employee e join (select * from Salary where StartTime in (select MAX(StartTime) from Salary group by EmpNo)) as t on e.EmpNo =t.EmpNo) as es 为结果集起别名,此结果集将作为一个虚表与部门表进行联接查询 子查询综合应用 第二种方案:联接查询 第三步:将第二步中的结果集与部门表联接查询,按部门编号进行分组计算出平均工资 select AVG(es.Salary) as p,es.DeptNo from department as d join (select t.*,e.DeptNo from Employee e join (select * from Salary where StartTime in (select MAX(StartTime) from Salary group by EmpNo)) as t on e.EmpNo =t.EmpNo) as es on d.DeptNo=es.DeptNo group by es.DeptNo 按编号计算出各部门平均工资 子查询综合应用 第二种方案:联接查询 第四步:将第三步生成的结果集与部门表进行联接查询。过滤掉小于等于5000元的部门,满足条件的部门显示出相应的信息。但部门的负责人在Employee表中,所以需要同时与Employee表联接 select d.DeptNo as 部门编号,d.DeptName as 部门名称,emp.EmpName as 部门负责人,r.p from department as d join (select AVG(es.Salary) as 部门平均工资,es.DeptNo from department as d join (select t.*,e.DeptNo,e.EmpName from Employee e join (select * from Salary where StartTime in (select MAX(StartTime) from Salary group by EmpNo)) as t on e.EmpNo =t.EmpNo) as es on d.DeptNo=es.DeptNo group by es.DeptNo) as r on d.DeptNo=r.DeptNo join Employee as emp on emp.EmpNo=d.Principal where r.p5000 为了显示部门负责人名称和部门名称与部门表、员工表联接查询 小结3 联接查询比子查询效率更高,子查询是外部查询逐行与查询进行比较, 磁盘IO读写量非常大。在实际使用中,可以选择采取哪一种查询方式: 子查询适合多层次筛选数据,多表联接查询适合从多张表中提取数据。 本章总结 子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询 基本子查询有三类: 通过 IN 、ANY 、ALL 修改的比较运算符引入的列表上操作的子查询 通过未修改的比较运算符引入且必须返回单个值的子查询 通过 EXISTS 引入的存在测试的子查询 通过在子查询中使用IN子句,子查询可以返回多行记录,用于检测字段的值是否存在于一个范围 通过在子查询中使用EXISTS子句,可以对子查询中的行是否存在进行检查 子查询中使用ALL子句,ALL子句中必须全部行都满足条件才会返回真,ALL等效于NOT IN 子查询中使用ANY子句,ANY子句中只要一行数据满足条件就返回真 查询数据来源于多张表,可以采取3种方式查询:联接查询、子查询、UNION联合 第三章 深入SQL高级子查询 课程回顾 T-SQL变量有局部变量和全局变量两种: 局部变量由用户定义,以@为前缀。 全局变量由系统提供,以@@为前缀。用户只能获取全局变量的值,不能自己定义,使用IF ELSE语句可以根据条件决定执行的T-SQL语句。 使用WHILE语句可以循环执行T-SQL语句。 使用CASE WHEN THEN
您可能关注的文档
最近下载
- 河道整治工程施工质量创优计划的实施效果评估与改进策略.docx VIP
- 水利工程质量创优方案(3篇).docx VIP
- 110kv变电站的设计毕业设计(论文).docx VIP
- 华中师范大学《C++程序设计》2020-2021学年第一学期期末试卷.pdf VIP
- 电力系统仿真:电力系统暂态仿真all.docx VIP
- 电力系统暂态稳定性仿真研究毕业设计(论文).docx VIP
- 3 浮力——液面升降问题(原卷版).docx VIP
- 核心素养视域下的初中数学单元作业设计研究.docx VIP
- 纪念红军长征90周年演讲稿(2025年最新版).pptx VIP
- 2002-2012 十年北京卷高考语文试卷深度解析.pdf VIP
原创力文档

文档评论(0)