关系代数表达式的一般写法.pdf

关系代数表达式的一般写法.pdf

ID:55075832

大小:935.30 KB

页数:2页

时间:2020-05-09

关系代数表达式的一般写法.pdf_第1页
关系代数表达式的一般写法.pdf_第2页
资源描述:

《关系代数表达式的一般写法.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ComputerEducation教育与教学研究文章编号:1672-5913(2009)04-00118-02关系代数表达式的一般写法董兆安(曲阜师范大学计算机科学学院,山东日照276826)摘要:本文结合笔者实际教学经验,提出了一种用查询树作为工具书写关系代数表达式的一般方法。该方法有助于学生理解关系代数表达式的结构,从而快速正确地写出关系代数表达式。关键词:查询树;关系代数;数据库中图分类号:G642文献标识码:B1引言式转换成对关系的操作序列,需要有一种查询的内部表示,即查询表达式的内部结构,我们称它为查询树,也叫关系数据模型的数据操作是“数据库系统原理”课程做语法分析树。中的重

2、点教学内容,其难点在于理解关系代数的基本运定义:查询树是一棵树T=(V,E),其中,算,并使用关系代数表达式表达查询要求。在以往的教学1)V是节点的集合,每个非叶子节点是一个关系操作中发现,由于学生对查询要求缺乏有效的结构化认识,即运算符,叶节点是关系名;使通过大量的例题训练,仍很难掌握关系代数表达式的书2)E是边的集合,两个节点V1、V2之间有边(V1,写要领。尤其在面对较为复杂的查询时,经常出现各种运V2),当且仅当V2是V1的操作分量。算的优先级混乱、表达式内括号的匹配错误等问题。本文查询树较好地表示了对查询涉及到的关系上的操作,结合笔者实际教学经验,提出了一种用查询树作为工具,

3、可把它作为关系代数语言的语法的分析树。查询树包括叶书写关系代数表达式的方法。该方法有助于学生理解关系子节点和非叶子节点。叶子节点是关系名(即查询涉及的关代数表达式的结构,从而正确地写出关系代数表达式。系),非叶子节点是关系操作符。我们可用图1的查询树描述如下关系代数表达式:2关系代数表达式及其基本类型Exp1=πA(SσF(R))关系代数是一种抽象的查询语言,是关系数据库查询πA语言的理论基础。关系代数包括并(∪)、差(-)、笛卡尔积(×)、选择(σ)、投影(π)五个基本运算和交(∩)、自然连接()、除法(÷)等组合运算。这些运算经过有限次的复合后形成的表达式称为关系代数表达式,用来表

4、达用户提出的查询请SσF求。一般情况下,关系代数表达式可以有如下几种常见的R结构类型:1)选择σF(R)图1一棵查询树2)投影πA(R)4关系代数表达式的一般写法3)选择投影πA(σF(R))4)选择自然连接投影πA(σF(R)S)对于给定的一些相对简单的查询要求,只需要通过五对于更复杂的一些查询,可能由上述几种类型的运算个步骤的分析,就可以写出对应的关系代数表达式,此处结果进行并(∪)、差(-)、除法(÷)等双目运算来表达。称作“五步分析法”。下面以参考文献[1]中的学生选课数据库为目标数据库,介绍说明书写关系代数表达式的一般3查询树(querytree)步骤:查询树(querytr

5、ee)是RDBMS进行查询优化过程中的例1:查询选修了2号课程的学生学号和姓名一种查询的内部表示。查询优化是RDBMS的内部实现技1)确定目标属性,目标属性即用户所要查询的属性列术,对于一般用户应该是透明的。为了将查询的外部表达表,例1的目标属性:学号sno,姓名sname。作者简介:董兆安(1979-),男,讲师,硕士研究生,研究方向为数据结构与算法、数据库。118教育与教学研究ComputerEducation2)确定目标条件:分析查询要求,确定此查询过程中5)写出关系代数表达式:πsno,cno(sc)÷πcno(course)的条件限制,一般是限定某属性的具体取值、两个关系的等

6、值连接、自然连接条件等。例1的目标条件:选修的课5关系代数表达式的书写技巧程号cno=’2’。3)确定目标关系:根据1)、2)的分析,确定该查询所在使用“五步分析法”书写关系代数表达式时,也需涉及到的关系。经过分析,该查询是在student和sc两个要结合一些经验技巧,形成了一定的积累以后,才可以运关系上进行自然连接查询。其中,关系sc提供2号课程的用自如。比如,有些非常简单的查询,其实不需要五步就被选修信息,而student提供对应的学生姓名信息。可以直接写出表达式。实践表明,下列几条规则对于书写4)画查询树:把目标关系当作叶子节点,对这些关系关系代数表达式很有帮助:的操作序列依次当

7、作中间结点,画出查询所对应的语法1)对于只涉及到选择、投影和连接的查询可以使用下树。经过上述分析,不难画出查询树如图:列表达式:πsno,snameπL(σC(R×S))或者πL(σC(RS))2)针对“否定”特征含义的查询要求,如“不”、“没有”等字眼,一般要用差运算表示,例如“查询不选修2studentσcno=’2’号课程的学生姓名”可以用下列表达式表达:scπSname(Student)−πSname(σCno=‘2’(StudentS

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。