第五章 实 验 三 综合查询.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实 验 三 综合查询 实验目的: 熟练掌握数据表的连接查询、嵌套查询和集合查询,为后续学习作准备。 实验属性(验证性) 熟练掌握SQL管理控制台的使用; 掌握表的复杂查询操作。 实验仪器环境与要求 PC机,SQL SERVER2005。 实验要求 1.复习教材第三章,熟悉SQL语句。 2.掌握多表查询语句的一般格式。; 3.掌握多表无条件、有条件查询及查询结果排序与分组。 4.掌握多表连接、嵌套和集合查询语句的一般格式及各种使用方法。 实验原理 SQL语言基本应用。 实验步骤: (1) 启动SQL SERVER 2005。 (2) 附加数据库; (3) 验证如下例子: 1 不同表之间的连接查询 1. 查询每个学生及其选修课程的情况包括没选课的同学。 SELECT STUDENT.*,sc.* from student left outer join sc on(STUDENT.Sno=SC.Sno) 2. 查询每个学生的学号(Sno)、姓名(Sname)、选修的课程名(Cname)及成绩(Grade)并按照学号升序,课程号降序排列。 SELECT student.sno,sname,cname,grade from student,sc,course where student.sno=sc.sno and course.cno=sc.cno order by student.sno,grade desc 2 自身连接 3. 查询每一门课的先修课的课程名和学分。 select first.cno,second.cname,second.ccredit from course first,course second where first.cpno= second.cno 4. 查询与”张林林”年龄一样大的计算机系的同学姓名. select second.sname from student first,student second where first.sage=second.sage and first.sname=张林林 and second.sdept=计算机系 3 基本的嵌套查询 5. 查询王位同学没修的课程的课程号 select cno from course where cno not in(select sc.cno from sc,student where student.sno=sc.sno and student.sname=王位 ) 6. 求选修4号课程的学生的年龄,姓名。 select sage,sname from student ,sc where sc.cno =4 and student.sno=sc.sno select sage,sname from student where sno in(select sno from sc where sc.cno =4) 7. 求年龄大于所有女同学年龄的男学生的姓名和年龄 select sname,sage from student where sage all(select sage from student where ssex =女) and ssex=男 4 带谓词ANY或ALL的嵌套查询 8. 查询非数学系的不超过数学系所有学生的年龄的学生姓名(Sname)和年龄(Sage)。 select sname ,sage from student where sage=all(select sage from student where sdept!=数学系 ) 5 带谓词EXISTS的嵌套查询 9.查询所有选修了编号为“1”课程的学生姓名(Sname)和所在系(Sdept)。 select sname,sdept from student where exists (select * from sc where student.sno=sno and cno=1) 10.查询选修了所有课程的学生姓名(Sname)和所在系。 select sname ,sdept from student where not exists (select * from course whe

文档评论(0)

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

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

1亿VIP精品文档

相关文档