数据库基础与应用课件作者王珊李盛恩第02章节.pptVIP

数据库基础与应用课件作者王珊李盛恩第02章节.ppt

  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文档。上传文档
查看更多
第2章 关系模型 2.1 关系模型的基本概念 2.2 关系代数 2.3 查询优化 2.3 查询优化 查询优化的目的是针对一个查询,找出一种既省时间,又省空间,而且效率又比较高的方案。查询优化一般可分为代数优化和物理优化。代数优化是指关系代数表达式的优化;物理优化则是指存取路径和低层操作算法的选择。查询优化在关系数据库系统中有着非常重要的地位。关系数据库系统和非过程化的SQL语言能够取得巨大的成功,关键是得益于查询优化技术的发展。关系查询优化是影响RDBMS性能的关键因素。 图2.8 连接运算 2.2.3 用关系代数表示关系操作 关系代数可以用来表示对关系的查询操作和更新操作。 [例1] 查询学习课程号1137的学生的学号和成绩。 πSno,Grade(σCno=1137(SC)) [例2] 查询学习课程号为1137的学生的学号和姓名。 πSno, Sname(S(σCno=1137(SC))) ? [例3] 查询选修课程名为“管理学”的学生的学号和姓名。 πSno, Sname(S(σCname=管理学(C))SC) ? [例4] 查询选修课程号为1024或1136的学生的学号。 πSno(σCno=1024 ∨ Cno=1136(SC)) ? [例5] 查询至少选修课程号为1024与1136的学生的学号。 π1(σ1=4 ∧ 2=1024 ∧ 5=1136(SC×SC)) 在本例中SC×SC表示关系SC自身进行笛卡尔积,结果中有列重名的现象,这时,不能写Sno=Sno,因为Sno具有二义性(有两个列的名称都叫Sno),所以用1=4来表示,1表示第1列,4表示第4列。 [例6] 查询不学课程号为1156的学生的姓名和所在系。 πSname, Dept(S)-πSname, Dept(S(σCno=1156(SC))) ? [例7] 查询学习全部课程的学生的学号。 πSno(SC)÷C ? [例8] 查询所学课程包含学生葛波所学课程的学生的姓名。 学生葛波所学的课程可以表达为: πCno(σsname=葛波(S)) 所学课程包含学生葛波所学课程的学生的学号是: πSno(SC)÷πCno(σsname=葛波(S)) 这些学生姓名是: πSname(S(πSno(SC)÷πCno(σsname=葛波(S)))) ? [例9] 向关系S中增加一个学生信息。 S ∪(2000015,李立,男,计算机) 2.3.1 一个实例 首先来看一个简单的例子,说明为什么要进行查询优化。 ? [例10] 在学生(S)、课程(C)、选课(SC)数据库中求选修了1024号课程的学生姓名 假设在关系学生中有l000个元组,在关系选课中有l0 000个元组,其中选修1024号课程的元组有50个。设一个块能装20个S元组或l00个SC元组,则关系S的大小为1000÷20=50(块),关系SC的大小是10 000÷100=100(块)。并假设系统每秒可以读写10块。 尚辅网 / 2.1 关系模型的基本概念 2.1.1 二维表 在日常生活中,我们经常会碰到像花名册、工资单和成绩单等二维表格,这些二维表的共同特点是由许多行和列组成,列有列名,行有行号。 通过这张表可以总结出以下特点: (1)表有表名,如05班学生名单。 (2)表由两部分构成,一个表头和若干行数据。 (3)从垂直方向看表有若干列,每列都有列名如学号和姓名等。 (4)同一列的值取自同一个定义域,例如,籍贯只能取自32个省、直辖市、自治区,学号只能取20006000范围。 (5)每一行的数据代表一个学生的信息,同样每一个学生在表中也具有一行,行有行号(在本例中行号是隐含的)。 对一张二维表可以进行以下操作: (1)填表。将班级中的每个同学的数据填写进表格。 (2)修改。改正表中的错误数据。 (3)删除。去掉一个学生的数据(如同一个同学的数据填写了两遍、调到其他班级、出国或留级等)。 (4)查询。在表中按某些条件查找满足条件的学生。 在操作时要受到一些限制,如分配给该班的学号是20000151。 2.1.2 关系 关系是一张规范化的二维表。一个关系由关系名、关系模式和关系实例组成。 在关系模型中,关系模式描述了一个实体型,关系实例是由一组实体组成的。 除了实体型和实体以外,在现实世界中实体与实体之间是有各种各样的联系的。 在关系模型中,实体之间的联系也用

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档