网站大量收购闲置独家精品文档,联系QQ:2885784924

第6章查询和视图.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
查询和视图 1.返回多个值的子查询 当子查询的返回值不止一个,需用ALL、ANY、SOME和IN运算符。 ALL:表示与子查询结果中所有记录的相应值相比均符合要求才算满足条件。 ANY、SOME:这两个词是同义词,要求仅满足子查询结果的任意一条记录的比较条件即可。 IN:主查询的记录的字段包含在子查询模块的查询结果中。相反,可用NOT IN在主查询中检索那些在子查询中不包含与它们的值相同的记录。 查询和视图 返回多个值的子查询示例(1) [例6-18]显示分数表中比所有大学体育课程分数还要高的学生学号、课程号和分数。 select sno,cname,score from score ; where scoreall(select score from score ; where cname=大学体育) 也可以这样写: select sno,cname,score from score ; where score (select max(score); from score where cname=大学体育) 查询和视图 返回多个值的子查询示例(2) [例6-19]显示分数表中比大学体育课程分数高的学生学号、 课程名和分数。 select sno,cname,score from score ; where cname 大学体育 and score ; any(select score from score where cname=大学体育) 也可以这样写: select sno,cname,score from score ; where cname 大学体育 and score ; (select min(score) from score where cname=大学体育) 查询和视图 返回多个值的子查询示例(3) [例6-20]显示在成绩表中有考试成绩的学生记录。 select * from student where sno ; in (select distinct sno from score) [例6-21]显示分数表中所有姓张的学生所修的课程名称和分数。 select cname,score from score ; where sno in ; (select sno from student where sname like 张% ) 查询和视图 6.2.6 多表查询 联接查询是一种基于多个表的查询操作。 联接类型有以下几种: 联接类型 特点 自然联接 满足条件的记录都包含在查询结果中 左联接 满足条件的记录包含在查询结果中,左边表中不满足条件的记录也在查询结果中 右联接 满足条件的记录包含在查询结果中,右边表中不满足条件的记录也在查询结果中 全联接 满足条件的记录都包含在查询结果中,左右两表不满足条件的记录也在查询结果中。 查询和视图 A表: B表: 两表自然连接结果: 两表左连接结果: 两表右连接结果: 两表全连接结果: 各种联接类型示例 查询和视图 联接查询示例(1) [例6-22]显示所有同学的姓名、课程名和成绩。 select student.sname,score.cname,score.score ; from student join score on; student.sno=score.sno 或者: select a.sname,b.cname,b.score ; from student a,score b ; where a.sno=b.sno 查询和视图 联接查询示例(2) [例6-23]显示所有同学的姓名、课程名、成绩和上课地点。 select student.sname,score.cname,score.score,; course.cloc; from student join score; on student.sno=score.sno; join course ; on score.cid=course.cid 查询和视图 联接查询注意事项 多表连接时,引用字段要写明来自哪个表。如果字段名唯一可以不加表名。 三个表连接书写形式: A join B join C on BC连接条件 on AB连接条件 A join B on AB连接条件 join C on BC连接条件 From A,B,C Where AB连接条件 and BC连接条件 查询和视图 6.2.7 查询结果输出 格式:[INTO 目标

文档评论(0)

xiaohuer + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档