数据库实验报告复杂数据查询.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库实验报告复杂数据查询

计算机与通信工程学院 实 验 报 告 (软件实验用) 课程名称 数据库原理与技术 实验项目名称 复杂数据查询 年级 大三 班级 信计 学号 姓名 同组姓名 实验日期 指导教师签字 一、实验目的: 掌握连接和嵌套查询操作; 二、实验内容: 1、 打开MIS数据库,用SQL语言完成下列问题。 (1)根据学生、课程和成绩表,输出“计算机”课程的成绩单,包括姓名和分数。 (2)查询所开课程的选修情况,包括没有任何学生选修的课程。 (3)从学生、课程和成绩表中,产生数据库课程的成绩单。 2、假设有贷款关系如图1所示。 图1 贷款关系 (4)创建贷款关系。 create table 贷款 ( 帐号 char(20), 姓名 char(8), 金额 char(10)) insert into 贷款 values(G10020,关平之, 20033.0 ) insert into 贷款(帐号,姓名) values(T20078,李连玉 ) insert into 贷款 values(T65743,姜海洋, 30092.00 ) insert into 贷款 values(H89765,田平平, 30200.60) insert into 贷款 values(H76890,方一华, 19080.40) (5)找出贷款表中金额为空值的帐号和姓名。 (6)找出贷款表中贷款金额非空的帐号和姓名。 3、 假设有导师与研究生2个表,如图2所示。 图2 导师与研究生表 (7) 查询研究生与其导师的情况。 SELECT * FROM 研究生A INNER JOIN教师 B ON A.导师号= B.教工号 (也可以写成等价的SQL语句: SELECT * FROM 研究生A,导师 B WHERE A.导师号= B.教工号) (8)计算导师与研究生关系的笛卡儿乘积。 SELECT * FROM 导师 CROSS JOIN 研究生 (9)查询教师指导研究生的情况,包括不指导研究生的教师。 SELECT * FROM 导师 A LEFT OUTER JOIN 研究生 B ON (A.教工号= B.导师) (10)查询研究生和教师的情况,包括没有导师的研究生和没有指导研究生的教师。 SELECT * FROM 研究生 A FULL OUTER JOIN 导师 B ON (A.导师号=B.教工号) (11)根据学生、课程和成绩表,输出“计算机”课程的成绩单,包括姓名和分数。 SELECT 姓名,分数 FROM 学生 A JOIN 成绩 B ON(A.学号=B.学号) JOIN课程 C ON(B.课程编号=C.课程编号) WHERE C.课程名称=’计算机’ 等价的SQL语句: SELECT 姓名,分数 FROM 学生 A,成绩 B,课程 C WHERE A.学号=B.学号 AND B.课程编号= C.课程号 AND C.课程名=计算机 (12)查询所开课程的选修情况,包括没有任何学生选修的课程。 SELECT 学号, 课程名称, 分数 FROM 成绩 A RIGHT OUTER JOIN 课程 B ON (A.课程编号=B.课程编号) (13)从学生、课程和成绩表中,产生数据库课程的成绩单。 SELECT 姓名,课程名,分数 FROM 学生 S,课程 C,成绩 G WHERE S.学号=G.学号 AND G.课程编号=C.课程号 AND C.课程名=数据库 或 SELECT 姓名,课程名称,分数 FROM 学生 S JOIN 成绩 G ON (S.学号=G.学号) JOIN课程 C ON (G.课程编号=C.课程编号) WHERE C.课程名称=’数据库’ (14)找出贷款表中金额为空值的帐号和姓名。 (15)找出贷款表中贷款金额非空的帐号和姓名。 (16) 查询研究生与其导师的情况。 SELECT * FROM 研究生A INNER JOIN教师 B ON A.导师号= B.教工号 也可以写成等价的SQL语句: SELECT * FROM 研究生A,导师 B WHERE A.导师号= B.教工号 (17)查询教师指导研究生的情况,包括不指导研究生的教师。 SELECT * FROM 导师 A LEFT OUTER JOIN 研

文档评论(0)

didala + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档