版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二讲关系代数和数据依赖概念1关系代数1970年IBM公司的E.F.Cood博士在论文“一个通用关系式数据库系统的模型”中首先提出了关系模型,它提供了格式化数据库系统难以做到的数据独立性和数据相容性。此模型后来又由Codd加以改进,被许多人认为是一切数据库系统的未来。关系数据库之所以发展如此之快,因为关系数据库的模型简明,便于用户理解使用方便等等特点,更重要的是,关系数据库有着网状和层次数据库没有的数学基础----关系代数,可以利用关系代数对表格进行任意的分割和组装,随机地产生用户所需要的各种新表,这为关系数据的发展提供了基础和保证。1.1基本概念术语表17.1关系模型中的术语与数据世界中的术语的对应关系关系模型数据世界元组记录关系模型数据模型属性数据项(字段)属性值数据项的具体取值域数据项的取值范围关系文件关系模式记录型候选关键字候选关键字次关键字次关键字主关键字主关键字定义给定一组集合D1,D2,...,叼,它们可以是相同的,若R是这样一个有序n元组:{(dlrd2r...rdn)|eDiri=12...』}则称R是对于这n个集合的一个关系,并称集合D1,D2,...,Dn为关系R的域,称n为关系的度。1.2关系运算在关系模型中,实体以及实体间的联系采用了单一数据结构----关系来表示。对数据的操作就是对关系的运算。关系运算的形式可分为两大类:(1)关系代数:把关系看作集合,以关系为运算对象的关系运算。(2)关系演算:使用数理逻辑谓词演算概念的关系运算。并(Union)设R和S为同类关系,即具有相同的度和相应属性在相同的域中取值,但并不要求属性名一致,则关系R和S的并由属于R或属于S的所有元组构成,记作RS。例:
RuSABCabcdafL:bdbSaABCabL:dafcbdRABcbgaABCabL:dafcbdRABcbgadafS设R和S为同类关系,则关系R和S的交由属于R同时属于S的所有元组构成,记作RS。例:RSABCABcabL:bSadafdafcbd
如sABcdafSQL语句:SelectR.A,R.B,R.CfromR,SwhereR.A=S.AandR.B=S.BandR.C=S.C差(Difference)设R和S为同类关系,则关系R和S的差由属于R但不属于S的所有元组构成,记作R-S。例:RSABCABcabL:bSadafdafcbdR-SABCabccbd笛卡尔积(CartesianProduct)
设R为k1元关系,S为k2元关系,则关系R和S的笛卡尔积是一个(k1+k2)元的关系,其中每个元组的前k1个分量取自R中的一个元组,后k2个分量取自S中的一个元组,记作RxS。例:ABABCDEFabcbgaabcdafdafbgadafdafcbdbgacbddaf(2RXSSQL语句:Select*fromR,S投影(Projection)设R为k元关系,yAi2,...,Aim分别是它的第i1,i2,...,im个属性,则关系R在Ai1则关系R在Ai1Ai2Aim上的投影是一个m元关系,其属性为、,%,...,气I,】".,!R)投影的基本思想是从一个关系中选择我们需要的属性成分,并按要求排列组成一个新的关系,新的关系的各属性值来自原来关系中相应的属性值,并去掉重复元组。例:对关系R,做投影兀(R),得3,1归1曲CACafddL:SQL语句:SelectDistinctC,AfromR选择(Selection)设F是一个命名公式,则在关系R上的F选择是在R中挑选满足F的所有元组,组成一个新的关系,这个新的关系是R的一个子集,记为:%(R)其中F由下列三部分组成:运算对象、算术比较符、逻辑运算符。例:对关系R,做选择bE_V区-f(R),得卬i]=、W]=f(R)ABcabcdafSQL语句:Select*intoR1fromRwhereA='a'orC='f'连接(Join)连接运算把两个关系的共同的域按某种条件约束结合在一起形成新的关系。设R为匕元关系,S为k2元关系,算术比较符是0。则关系R的第i列和关系S的第j列的连接定义为:Rx|Smj]从定义可以看出,连接运算是从两个关系的笛卡尔积中选取满足一定连接条件的元组的集合,连接的结果是一个(k1+k2)元的关系。也称为一般连接。例:ABCBABCBCD123232456563SQL语句:(c)Select*fromR,SwhereR.A<S.D(d)Select*fromR,SwhereR.C=S.C自然连接(NaturalJoin)当两个关系R和S的某些列具有相同的属性名时,可利用这些同名属性列总的相同值作为连接条件将两个关系连接起来,构成自然连接。在连接后的关系中,不仅含有R与S不同的属性列,而且含有相同的属性列,其元组的数目由相同属性列中的相同值决定。
设R是属性名组为(A1,%,...,Am,...,Aki)的匕元关系,S是属性名组为(A,A,...,A,B,...,B)的k元关系,其中A,A,...,A是同12mm+1k2212m名属性列,则R和S的自然连接定义为...。进行自然连接的步骤如下:(1)计算RxS;(2)选择Ai.R=Ai・S的所有元组;(3)去掉重复属性。可以看出,如果两个关系没有公共属性,自然连接就是笛卡尔积。例:17.6R和S的自然连接SQL语句:SelectDistinctR.A,R.B,R.C,S.DfromSQL语句:SelectDistinctR.A,R.B,R.C,S.DfromR,SwhereR.B=S.BandR.C=S.C除(Division)除运算是指用一个(m+n)度的关系R除以一个n度关系S,运算结果生成一个m元的新关系。这里R的第(m+i)个属性和S的第i个属性(i=1,...,n)必须是在相同的域上定义。当把R的前m个属性看作一个组合属性x,后n个属性看成一个组合属性y,则S也可类似地看成一个组合属性y。这样以S中的y
值来对R进行分组,当组中含有y值时,则组中的x值便构成了R除以S的一个元组。R除以S的数学表达式为:R+S=气(R)-气(气(R)xS-R)其中a为关系R中除去与S关系相同的其余属性。例:3)R(WS3)R!S图17.7除运算按公式分解计算
3)R(WS3)R!S侦R)ABABCDababcddcabefeddL:cddCefedcdedef7ia(R)xS-RABcDdccd而(X(R)必-R)ABdcABabed关系代数对数据库的数据操作是完备的,利用关系代数可以实现一切数据操作。2函数依赖概念数据依赖是通过一个关系中数据间值的相等与否体现出来的数据间的相互关系,是现实世界属性间相互关系的抽象,是数据内在的性质。数据依赖中最重要的是函数依赖(FunctionalDependency)。2.1函数依赖定义:设有一关系模式R(A,A,…,A),X和Y均为(A,A,…,A)的子集,12n12n对于R的值r来说,当其中任意两个元组u,v中对应于X的那些属性分量的值均相等时,则有u,v中对应于Y的那些属性分量的值也相等,称X函数决定Y,或Y依赖于X,记为X->Y。例:有关系,学生(学号S#,姓名SN,系名SD),子集X(学号S#),子集Y(系名SD)。每个学生有唯一的一个学号,学生中可以有重名的姓名,每个学生只能属于一个系,每个系有唯一的系代号。有此,可以找出学生关系模式中存在下列函数依赖:S#->SN;S#->SD例:有关系,学校简况(学号S#,系名SD,系主任MN,课程CN,成绩G)。可写出函数依赖:S#->SD;SD->MN;S#,CN->G根据函数依赖的不同性质,函数依赖可分为完全函数依赖、部分函数依赖和传递函数依赖。2.2完全函数依赖对于X的任意一个真子集X’,都有X’不能决定记为X—Y。定义:在R(U)中,如果X->Y,Y,则称Y对X完全函数依赖,例:(S#,CN)马G2.3部分函数依赖但Y不完全函数依赖于X,则称Y对X部分函数对于X的任意一个真子集X’,都有X’不能决定记为X—Y。但Y不完全函数依赖于X,则称Y对X部分函数例:(S#,CN)马G,但(S#,CN)二>SD2.4传递函数依赖定义:在R(U)中,当且仅当X->Y,Y->Z时,称Z对X传递函数依赖。例:描述学生(S#)、班级(SB)、辅导员(TN)的关系U(S#,SB,TN)。一个班有若干学生,一个学生只属于一个班,一个班只有一个辅导员,但一个辅导员负责
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 餐饮服务承揽合同三篇
- 管道行业安全管理工作心得
- 2025年全球及中国丙二醛行业头部企业市场占有率及排名调研报告
- 2025年全球及中国头发护理用神经酰胺行业头部企业市场占有率及排名调研报告
- 2025年全球及中国DHA微囊粉行业头部企业市场占有率及排名调研报告
- 2025年全球及中国三维足底扫描系统行业头部企业市场占有率及排名调研报告
- 2025-2030全球电动跨式堆垛机行业调研及趋势分析报告
- 2025年全球及中国介孔二氧化硅微球行业头部企业市场占有率及排名调研报告
- 2025年全球及中国多相真空萃取机行业头部企业市场占有率及排名调研报告
- 2025-2030全球豆荚酒店行业调研及趋势分析报告
- 2025年春季学期学校德育工作计划安排表(完整版)
- 2025年有机肥行业发展趋势分析报告
- 五年级口算题卡每天100题带答案
- 2024年全国初中数学联合竞赛试题参考答案及评分标准
- Hadoop大数据开发实例教程高职PPT完整全套教学课件
- 企业中层管理人员测评问题
- 人教版高中地理必修一全册测试题(16份含答案)
- 《民航服务沟通技巧》教案第11课孕妇旅客服务沟通
- 新东方四级词汇-正序版
- 面向机器人柔顺操作的力位精准控制方法研究共3篇
- 《地下工程测试技术》课程教学大纲
评论
0/150
提交评论