




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
子查询
EpisodeIX,PartII子查询EpisodeIX结构目标预备知识
回顾内容
总结
作业目标定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询预备知识回顾内容定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询问题谁的工资比Abel的高谁的工资比Abel的高?主查询:Abel工资是多少?子查询:子查询语法子查询在主查询之前执行主查询要使用子查询的结果SELECT select_listFROM tableWHERE exproperator (SELECT select_list FROM table);SELECTlast_name,salaryFROMemployeesWHEREsalary>(SELECTsalaryFROMemployeesWHERElast_name='Abel');11000子查询子查询必须放在括号中子查询最好放在运算符的右侧增强可读性单行子查询使用单行运算符,多行子查询使用多行运算符内容定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询子查询分类单行子查询多行子查询MainquerySubquery
returnsST_CLERKST_CLERKSA_MANMainquerySubquery
returns内容定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询单行子查询仅仅返回一行必须使用单行比较运算符Greaterthanorequalto>=Lessthan<Lessthanorequalto<=Equalto=Notequalto<>Greaterthan>MeaningOperatorSELECTlast_name,job_id,salaryFROMemployeesWHEREjob_id=(SELECTjob_idFROMemployeesWHERElast_name=‘Taylor’)ANDsalary>(SELECTsalaryFROMemployeesWHERElast_name=‘Taylor’);SA_REP8600SELECTlast_name,job_id,salaryFROMemployeesWHEREsalary=(SELECTMIN(salary)FROMemployees);2500SELECTdepartment_id,MIN(salary)FROMemployeesGROUPBYdepartment_idHAVINGMIN(salary)>(SELECTMIN(salary)FROMemployeesWHEREdepartment_id=50);2500…多行子查询子查询返回多行必须使用多行比较运算符Mustbeprecededby=,!=,>,<,<=,>=.Comparesavaluetoeveryvalueinalistorreturnedbyaquery.EvaluatestoTRUEifthequeryreturnsnorows.ALLEqualtoanymemberinthelistINMustbeprecededby=,!=,>,<,<=,>=.Comparesavaluetoeachvalueinalistorreturnedbyaquery.EvaluatestoFALSEifthequeryreturnsnorows.ANYMeaningOperatorANY运算符SELECTemployee_id,last_name,job_id,salaryFROMemployeesWHEREsalary<ANY(SELECTsalaryFROMemployeesWHEREjob_id='IT_PROG')ANDjob_id<>'IT_PROG';9000,6000,4200…使用ALL运算符SELECTemployee_id,last_name,job_id,salaryFROMemployeesWHEREsalary<ALL(SELECTsalaryFROMemployeesWHEREjob_id='IT_PROG')ANDjob_id<>'IT_PROG';9000,6000,4200子查询中的NULL值SELECTemp.last_nameFROMemployeesempWHEREemp.employee_idNOTIN(SELECTmgr.manager_idFROMemployeesmgr);内容定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询多列子查询MainqueryWHERE(MANAGER_ID,DEPARTMENT_ID)INSubquery10090
10260
12450多列子查询SELECT employee_id,manager_id,department_idFROM empl_demoWHERE(manager_id,department_id)IN(SELECTmanager_id,department_idFROMempl_demoWHEREfirst_name='John')ANDfirst_name<>'John';SELECTemployee_id,manager_id,department_idFROMempl_demoWHEREmanager_idIN(SELECTmanager_idFROMempl_demoWHEREfirst_name='John')ANDdepartment_idIN(SELECTdepartment_idFROMempl_demoWHEREfirst_name='John')ANDfirst_name<>'John';内容定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询标量子查询返回一行一列可以在CASE,DECODE中使用可以在除了GROUPBY之外的任何SELECT子句中使用SELECTemployee_id,last_name,(CASEWHENdepartment_id=
(SELECTdepartment_id
FROMdepartmentsWHERElocation_id=1800)THEN'Canada'ELSE'USA'END)locationFROMemployees;SELECTemployee_id,last_nameFROMemployeeseORDERBY(SELECTdepartment_nameFROMdepartmentsdWHEREe.department_id=d.department_id);
20内容定义子查询描述子查询分类书写单行和多行子查询书写多列子查询书写标量子查询书写相关子查询相关子查询选取从外部查询中获取一候选行执行使用候选行执行内部查询使用内部查询的结果用来限定外部查询的行子查询中需要使用父查询表中的列SELECTcolumn1,column2,...FROMtable1WHEREcolumn1operator (SELECTcolumn1,column2FROMtable2WHEREexpr1= .expr2);outerouterSELECTlast_name,salary,department_idFROMemployeesouterWHEREsalary>
(SELECTAVG(salary)FROMemployeesWHEREdepartment_id=outer.department_id);SELECTe.employee_id,last_name,e.job_idFROMemployeeseWHERE2<=(SELECTCOUNT(*)FROMjob_historyWHEREemployee_id=e.employee_id);EXIST运算符EXISTS测试行在子查询中的存在性如果子查询中行存在子查询停止查找条件标记为TRUE如果子查询中行不存在条件标记为FALSE子查询中继续查找SELECTemployee_id,last_name,job_id,department_idFROMemployeesouterWHEREEXISTS(SELECT'X'FROMemployeesWHEREmanager_id=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年春季第6周教师业务学习《有效教学的三种途径》资料参考
- 集团公司财务部工作总结范文(9篇)
- 小学四年级数学三位数乘两位数水平测试试题带答案
- 二年级数学几千几百数加减整百数水平监控试题
- 运动广播稿(集合15篇)
- 货运公司年终总结
- 采购个人年终总结
- 酒店交叉培训课件
- 人教河南 九年级 下册 语文 第六单元《 出师表》习题课 课件
- 网络信息安全技术课件 第6章 网络安全协议
- GB/T 27476.2-2014检测实验室安全第2部分:电气因素
- GA 1010-2012看守所床具
- 清洗消毒灭菌技术操作规范 课件
- 四川大学教案-《高级语言程序设计I》
- 幼儿园大班数学:《10以内的相邻数》课件
- 304不锈钢圆管检验报告
- 少儿美术-五彩的蛋壳参考PPT1
- 古诗宿建德江课件
- 科研课题申请表(模板)
- OpenStack云计算平台实战课件(完整版)
- 新部编人教版九年级下册初中历史全册期末复习课件(单元复习+专题复习)
评论
0/150
提交评论