- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
需要注意的是,子查询一定要跟在比较运算符之后,下列写法是错误的: SELECT Sno, Sname, Sdep FROM Student WHERE ( SELECT Sdep FROM Student WHERE Sname= 刘尘 ) = Sdep 【例5.12】和【例5.13】中的各个子查询都只执行一次,其查询结果用于父查询。子查询的条件不依赖于父查询,这类子查询称为不相关子查询。不相关子查询是较简单的一类子查询。如果子查询的查询条件依赖于父查询,这类子查询称为相关子查询。请看【例5.14】。 【例5.14】找出每个学生超过他选修课程平均成绩的课程号。 SELECT Sno, Cno FROM SC x WHERE Grade = ( SELECT AVG (Grade) FROM SC y WHERE y.Sno = x.Sno ) 在【例5.14】中,x是表SC的别名,又称为元组变量,可以用来表示SC的一个元组,内层查询是求一个学生所有选修课程平均成绩的,至于是哪个学生的平均成绩要看参数x.Sno的值,而该值是与父查询相关的,因此这类查询称为相关子查询。 5.4.3 带ANY或ALL的嵌套查询 子查询返回单值时,可以用比较运算符,但返回多值时,要用ANY或ALL谓词修饰符。而使用ANY或ALL谓词时,必须同时使用比较运算符。其语义为: ANY 大于子查询结果中的某个值 ALL 大于子查询结果中的所有值 ANY 小于子查询结果中的某个值 ALL 小于子查询结果中的所有值 =ANY 大于等于子查询结果中的某个值 =ALL 大于等于子查询结果中的所有值 =ANY 小于等于子查询结果中的某个值 =ALL 小于等于子查询结果中的所有值 =ANY 等于子查询结果中的某个值 =ALL 等于子查询结果中的所有值(通常没有实际意义) !=(或 )ANY 不等于子查询结果中的某个值 != (或 )ALL 不等于子查询结果中的任何一个值 【例5.15】查询其他系中比计算机系某一学生年龄小的学生姓名、年龄和所属院系。 SELECT Sname, Sage, Sdep FROM Student WHERE Sage ANY ( SELECT Sage FROM Student WHERE Sdep = CS ) AND Sdep != CS‘ 系统执行此查询时,首先处理子查询,找出计算机系中所有学生的年龄,构成一个集合(20,19)。然后处理父查询,找出所有非计算机系且年龄小于20或者19的学生。 该查询也可以用聚集函数来实现。首先用子查询找出计算机系学生的最大年龄(20),然后在父查询中查询所有非计算机系其年龄小于20的学生。SQL语句如下: SELECT Sname, Sage, Sdep FROM Student WHERE Sage ( SELECT MAX (Sage) FROM Student WHERE Sdep = CS ) AND Sdep != CS 【例5.16】查询其他系中比计算机系所有学生年龄都小的学生姓名、年龄和所属院系。 SELECT Sname, Sage, Sdep FROM Student WHERE Sage ALL ( SELECT Sage FROM Student WHERE Sdep = CS ) AND Sdep != CS‘ 本查询同样也可以用聚集函数来实现,SQL语句如下: SELECT Sname, Sage, Sdep FROM Student WHERE Sage ( SELECT MIN(Sage) FROM Student
您可能关注的文档
- 数据库基础与应用第4章_查询处理及优化.ppt
- 数据库基础与应用第5章_事务处理.ppt
- 数据库基础与应用第6章_客户服务器数据库环境.ppt
- 数据库基础与应用第7章_在应用中使用SQL-完成.ppt
- 数据库基础与应用第8章_实体联系模型.ppt
- 数据库基础与应用第9章_规范化理论.ppt
- 数据库基础与应用第10章_第10章 对象关系数据库.ppt
- 数据库基础与应用第11章_XML数据库-完成.ppt
- 数据库基础与应用第12章_第12章 数据仓库技术.ppt
- 数据库基础与应用第13章_联机分析处理(OLAP)技术-完成.ppt
- 数据库技术与应用——SQL Server 2005第6章 Transact-SQL语言.ppt
- 数据库技术与应用——SQL Server 2005第7章 视 图.ppt
- 数据库技术与应用——SQL Server 2005第8章 索引.ppt
- 数据库技术与应用——SQL Server 2005第9章 存储过程.ppt
- 数据库技术与应用——SQL Server 2005第10章 触发器和游标.ppt
- 数据库技术与应用——SQL Server 2005第11章 数据库备份与还原.ppt
- 数据库技术与应用Visual FoxPro6第1章.ppt
- 数据库技术与应用Visual FoxPro6第2章.ppt
- 数据库技术与应用Visual FoxPro6第3章.ppt
- 数据库技术与应用Visual FoxPro6第4章.ppt
文档评论(0)