欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第 关系数据库.pptx

    • 资源ID:87437465       资源大小:775.37KB        全文页数:97页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第 关系数据库.pptx

    1/98第二章第二章 关系数据库关系数据库2.1 关系数据结构及形式化定义2.2 关系操作2.3 关系的完整性2.4 关系代数2.5 小结第1页/共97页2/982.1 2.1 关系数据结构及其形式化定义关系数据结构及其形式化定义从集合论的角度给出关系数据结构的形式化定 义。(需要离散数学集合论的概念)关系数据结构的基本概念2.1.1 关系(Relation)2.1.2 关系模式(Relation Schema)2.1.3 关系数据库第2页/共97页3/982.1.1 2.1.1 关系关系域(Domain)2.笛卡尔积(Cartesian Product)3.关系(Relation)第3页/共97页4/981.1.域(域(DomainDomain)定义2.1 域是一组具有相同数据类型的值的集合。例如:整数、实数介于某个取值范围的整数 D=0,1,2,100长度指定长度的字符串集合男,女域中所包含的值的个数称为域的基数(用m表示)。D1=李力,王平,刘伟,m1=3;D2=男,女;m2=2;D3=18,20,23;m3=3。第4页/共97页5/982.2.笛卡尔积(笛卡尔积(Cartesian ProductCartesian Product)定义2.2:给定一组域D1,D2,Dn,这些域中可以有相同的。D1,D2,Dn的笛卡尔积为:D1D2Dn(d1,d2,dn )di Di ,i1,2,n 其中,每一个元素(d1,d2,dn)叫作一个n元组(n-tuple)或简称元组(tuple),元素不能重复。元组(d1,d2,dn)中的每一个值di叫作一个分量(Component)。所有域的所有取值的一个组合第5页/共97页6/98笛卡尔积(续)笛卡尔积(续)D1张清玫张清玫刘逸刘逸例:D1导师域D2专业域D3 研究生域D2计算机专业计算机专业信息专业信息专业D3李勇李勇刘晨刘晨王敏王敏 D1 D2D3李勇李勇刘晨刘晨王敏王敏=D1 D2 D3张清玫张清玫 计算机专业计算机专业 李李勇勇张清玫张清玫 计算机专业计算机专业 刘刘晨晨张清玫张清玫 计算机专业计算机专业 王王敏敏张清玫张清玫 信息专业信息专业 李勇李勇张清玫张清玫 信息专业信息专业 刘晨刘晨张清玫张清玫 信息专业信息专业 王敏王敏刘逸刘逸 计算机专业计算机专业 李勇李勇刘逸刘逸 计算机专业计算机专业 刘晨刘晨刘逸刘逸 计算机专业计算机专业 王敏王敏刘逸刘逸 信息专业信息专业 李勇李勇刘逸刘逸 信息专业信息专业 刘晨刘晨刘逸刘逸 信息专业信息专业 王敏王敏张清玫张清玫 计算机专计算机专业业张清玫张清玫 信息专业信息专业刘逸刘逸 计算机计算机专业专业刘逸刘逸 信息专信息专业业第6页/共97页7/98笛卡尔积(续笛卡尔积(续)笛卡尔积的基数(Cardinal number)-关系中元组个数若Di(i1,2,n)为有限集,其基数为mi(i 1,2,n),则D1D2Dn的基数M为:在上例中,基数:22312,即D1D2D3共有 22312个元组D1张清玫张清玫刘逸刘逸D2计算机专业计算机专业信息专业信息专业D3李勇李勇刘晨刘晨王敏王敏第7页/共97页8/98笛卡尔积(续笛卡尔积(续)笛卡尔积的表示方法笛卡尔积可表示为一个二维 表。表中的每行对应一个 元组,表中的每列的值来自一个域。在上例中,12个元组可列成 一张二维表导师导师专业专业研究生研究生张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸计算机专业计算机专业计算机专业计算机专业计算机专业计算机专业信息专业信息专业信息专业信息专业信息专业信息专业计算机专业计算机专业计算机专业计算机专业计算机专业计算机专业信息专业信息专业信息专业信息专业信息专业信息专业李勇李勇刘晨刘晨王敏王敏李勇李勇刘晨刘晨王敏王敏李勇李勇刘晨刘晨王敏王敏李勇李勇刘晨刘晨王敏王敏表表2.1 D12.1 D1、D2D2、D3D3的笛卡尔积的笛卡尔积D1张清玫张清玫刘逸刘逸D2计算机专业计算机专业信息专业信息专业D3李勇李勇刘晨刘晨王敏王敏第8页/共97页9/983.3.关系(关系(RelationRelation)1)关系的定义:笛卡尔积D1D2Dn的子集叫作在域D1,D2,Dn上的关系,表示为R(D1,D2,Dn)R:关系名n:关系的元或度(Degree)导师导师专业专业研究生研究生张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫张清玫刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸刘逸计算机专业计算机专业计算机专业计算机专业计算机专业计算机专业信息专业信息专业信息专业信息专业信息专业信息专业计算机专业计算机专业计算机专业计算机专业计算机专业计算机专业信息专业信息专业信息专业信息专业信息专业信息专业李勇李勇刘晨刘晨王敏王敏李勇李勇刘晨刘晨王敏王敏李勇李勇刘晨刘晨王敏王敏李勇李勇刘晨刘晨王敏王敏注意:注意:关系是关系是笛卡尔积的有限笛卡尔积的有限子集。子集。无限关系在数据库系统无限关系在数据库系统中是无意义的,在笛卡尔积中中是无意义的,在笛卡尔积中取出取出有实际意义的元组有实际意义的元组来构造来构造关系。关系。导师导师专业专业研究生研究生张清玫张清玫计算机专业计算机专业李勇李勇张清玫张清玫计算机专业计算机专业刘晨刘晨刘逸刘逸信息专业信息专业王敏王敏第9页/共97页10/98关系(续)关系(续)2)元组 关系中的每个元素(即每行),通常用t表示。3)属性 *关系中不同列可以对应相同的域,为了加以区分,必须对 每列起一个名字,称为属性(Attribute)。*一个由n个属性组成的关系称为n元关系4)单元关系与二元关系 n=0 时称空关系;当n=1时,称该关系为单元关系(Unary relation)。当n=2时,称该关系为二元关系(Binary relation)。第10页/共97页11/98关系(续)关系(续)5)码候选码-若关系中的某一属性组的值能唯一地标识一个 元组,则称该属性组为该关系的一个候选码(Candidate Key)。一个关系可能有多个候选码,则选定其中一个作为主码 (Primary Key,或主键)。包含在任何候选码中的属性称为主属性,不包含在任何 候选码中的属性称为非主属性。全码(All-key)-关系模式的所有属性组构成此关系模式的 唯一候选码。第11页/共97页12/98关系(续)关系(续)*候选码*主码(Primary Key,或主键)*主属性/非主属性*全码(All-key)S(Sno,IDCardno,Sname,Sage)SC(Sno,Cno,Grade)候选码主码主属性非主属性SnoCnoGrade9801019598010280980201889802039298030280SCT(Sno,Cno,Tno)S S:学生:学生SnoSno:学号:学号IDCardnoIDCardno:身份证号:身份证号SnameSname:姓名:姓名SageSage:年龄:年龄SCSC:选修:选修SnoSno:学号:学号CnoCno:课程号:课程号GradeGrade:成绩:成绩第12页/共97页13/98关系(续)关系(续)6)三类关系基本关系(基本表或基表)实际存在的表,是实际存储数据的逻辑表示。查询表查询结果对应的表。视图表由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。第13页/共97页14/987)7)关系的基本性质关系的基本性质(1)列的同质性:每列的值为同一类型。(2)列名唯一:每列具有不同的属性名(可同域)(3)列序无关:列的次序可以互换。(4)元组相异性:任意两元组不能完全相同,关系中用主码标 识元组(5)行序无关:行的次序可以互换。(6)分量原子性:分量值是原子的。每一个分量都必须是不可分的数据项。这是规范条件中最基本的一条第14页/共97页15/988)8)关系的基本性质关系的基本性质举例举例例:若属性A1、A2分别在域D1、D2中取值(D1=1,2,3 D2=a,b),问R1,R2,R3是否为关系?D=123ab1 a1 b2 a2 b3 a3 b=A2A11a2b3aA1A21a2b3aA2A1a1b2a4R1R2R3R2是关系R1和R3不是关系车间号车间号班组班组工资工资超额奖超额奖实发实发基本基本补助补助01甲组甲组50002005005700乙组乙组4500100300490002甲组甲组4800200+50505003丙组丙组30003005003800表表2.3 非规范化关系非规范化关系第15页/共97页16/982.1.2 2.1.2 关系模式关系模式1什么是关系模式2定义关系模式3.关系模式与关系第16页/共97页17/981.1.什么是关系模式什么是关系模式关系模式是对关系的描述。(是型的描述)需描述元组集合的结构:由哪些属性构成,这些属性来自 哪些域,以及属性与域之间的映象关系(即对应关系)。此外,关系模式应刻划出完整性约束条件。第17页/共97页18/982.2.定义关系模式定义关系模式关系模式表示为:R(U,D,dom,F)例:上图的关系模式R(U,D,DOM,F)R学生U学号,姓名,性别,年龄D整数,字符串DOM学号:(sno INT 6),年龄:(age INT 2 15-45),性别:(sex CHAR 2 男,女),姓名:(name CHAR 20)F学号决定所有其他属性域名集属性名集属性间的依赖关系集属性向域的映像集学号学号学生学生性别性别年龄年龄9901李勇李勇男男249902刘晨刘晨女女25关系名学生学生第18页/共97页19/98定义关系模式定义关系模式 (续续)关系模式通常可以简记为:R(U)或R(A1,A2,An)R为关系名,A1,A2,An为属性名。上例可简记为:学生(学号,姓名,性别,年龄)第19页/共97页20/983.3.关系模式与关系关系模式与关系关系模式对关系的描述静态的、稳定的关系关系模式在某一时刻的状态或内容动态的、随时间不断变化的两者是型与值的关系关系模式和关系往往统称为关系,通过上下文加以区别第20页/共97页21/982.1.3 2.1.3 关系数据库关系数据库在给定应用领域中,用于描述所有实体和实体间联系的关系的集合构成一个关系数据库。同样,关系数据库也有型和值之分。型:关系数据库模式,是对关系数据库的描述。值:一般就称为关系数据库。第21页/共97页22/98小结(术语之间的联系)一个关系只能对应一个关系模式一个关系模式可对应多个关系关系模式是关系的型,按其型装入数据值后即形成关系一个关系数据库是相关关系的集合关系数据库模式是若干相关关系模式的集合第22页/共97页23/98课堂练习:1.在基本的关系中,下列说法正确的是()A.行列顺序有关 B.属性名允许重名 C.任意两个元组不允许重复 D.列是非同质的C第23页/共97页24/98第二章第二章 关系数据库关系数据库2.1 关系数据结构2.2 关系操作2.3 关系的完整性2.4 关系代数2.5 小结第24页/共97页25/982.2 2.2 关系操作关系操作关系模型给出了关系操作的能力的说明,并不对DBMS语言给出具体的语法要求。即,不同的DBMS可以定义和开发不同的语言来实现这些关系操作。2.3.1 基本关系操作2.3.2 关系数据语言分类第25页/共97页26/982.2.1 2.2.1 基本关系操作基本关系操作查询选择、投影、连接、除、并、差、交、广义笛卡尔积等一个关系内属性的选择一个关系内元组的选择多个关系的合并更新(插入、删除、修改)插入:在关系中插入一些新的元组删除:在关系内删除一些元组修改:在关系内修改一些元组的内容关系操作的特点是集合操作方式:一次一集合第26页/共97页27/982.2.2 2.2.2 关系数据语言分类关系数据语言分类1.关系代数语言是用对关系的运算来表达查询要求的。如ISBL2.关系演算语言是用谓词来表达查询要求的。谓词变元基本对象是元组变量元组关系演算语言,如ALPHA,QUEL谓词变元基本对象是域变量域关系演算语言,如QBE关系代数、元组关系演算和域关系演算三种语言在表达 能力上完全等价。3.具有关系代数和关系演算双重特点的语言 如SQL第27页/共97页28/982.2.2 2.2.2 关系数据语言分类关系数据语言分类关系数据语言的共同特点语言具有完备的表达能力是高度非过程化的集合操作语言功能强大能嵌入高级语言中使用第28页/共97页29/98第二章第二章 关系数据库关系数据库2.1 关系数据结构2.2 关系操作2.3 关系的完整性2.4 关系代数2.5 小结第29页/共97页30/982.3 2.3 关系完整性关系完整性2.3.1 关系的完整性2.3.2 实体完整性2.3.3 参照完整性2.3.4 用户定义的完整性第30页/共97页31/982.3.1 2.3.1 关系的完整性关系的完整性关系模型的完整性规则是对关系的某种约束条件。关系模型的三类完整性:实体完整性参照完整性用户定义的完整性其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为是关系的两个不变性,应该由关系系统自动支持。由关系系统自动支持是应用领域需要遵循的约束条件第31页/共97页32/982.3.2 2.3.2 实体完整性实体完整性对主码的约对主码的约束束实体完整性规则:若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值(NULL)。空值就是“不知道”或“无意义”的值。主属性取空值,就 说明存在某个不可标识的实体,即存在不可区分的实 体,与元组相异性相矛盾,因此这个规则称为实体完整 性。学号学号学生学生性别性别年龄年龄专业专业9901李勇李勇男男24CS9902刘晨刘晨女女25CS9903王名王名男男23IS9904张立张立女女24IS实体完整性规则是针对基本关系而言的实体完整性规则是针对基本关系而言的第32页/共97页33/98定义2.5 设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码(Foreign key),并称基本关系R为参照关系(Referencing relation),基本关系S为被参照关系(Referenced relation)或目标关系(Target relation)。R-学生学生学号学号学生学生性别性别年龄年龄班号班号F9901李勇李勇男男241036019902刘晨刘晨女女25103601班号班号Ks专业专业学院学院103601信息管理信息管理计算机学院计算机学院103701计算机科学计算机科学计算机学院计算机学院S-班级班级参照关系被参照关系外码外码2.3.3 2.3.3 参照完整性参照完整性第33页/共97页34/982.3.3 2.3.3 参照完整性参照完整性对外码的约束对外码的约束参照完整性规则对外码的约束或者取空值(F的属性值取空值)或者等于S(参照关系)中某个元组的主码值第34页/共97页35/98班号班号专业专业学院学院103601信息管理信息管理计算机学院计算机学院103701计算机科学计算机科学计算机学院计算机学院103801软件工程软件工程计算机学院计算机学院学号学号学生学生性别性别年龄年龄班号班号9901李勇李勇男男241038019902刘晨刘晨女女25学号学号F课程号课程号成绩成绩9901C0192C0286班级班级学生学生选修选修学生关系中每个元组的“班号”属性只能取下面两类值:空值:表示尚未给学生分配班级非空值:这时该值必须取被参照关系的主码值,即班级关系中某个元组的“班号”值,表示该学生不可能分配到一个不存在的班级外码是否为空值视具体情况而定。在关系模式中,若外码是该模式中的主码的成分(主属性)时,不允许为空值。如选修关系中的“学号”。(为什么?)2.3.3 2.3.3 参照完整性参照完整性可以吗?为什么?可以吗?为什么?第35页/共97页特别提示:参照关系R与被参照关系S不一定是不同的关系,主码与外码也可以是不同的属性名。例:学生(学号,姓名,性别,年龄,班号,班长),班长为外码。“班长”属性可以取两类值:(1)空值:表示该学生所在班级尚未选出班长,或该学生本人 即是班长(2)非空值:这时该值必须是本关系中某个元组的学号值学号学号学生学生性别性别年龄年龄班号班号班长班长9901李勇李勇男男2410360199029902刘晨刘晨女女251036019903王名王名男男2310370199189904张立张立女女2410370299309918李四李四男男22103701学学生生第36页/共97页37/982.3.4 2.3.4 用户定义的完整性用户定义的完整性用户定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。常见的用户定义的完整性:定义属性是否允许为空值定义属性值的唯一性定义属性的取值范围定义属性的缺省值第37页/共97页38/98用户定义的完整性用户定义的完整性(续续)例:课程(课程号,课程名,学分)非主属性“课程名”也不能取空值“学分”属性只能取值1,2,3,4课程号课程号课程名课程名学分学分C01数据库数据库3C02高数高数4C03C语言语言2课课程程第38页/共97页39/98第二章第二章 关系数据库关系数据库2.1 关系数据结构2.2 关系操作2.3 关系的完整性2.4 关系代数2.5 小结第39页/共97页40/982.4 2.4 关系代数关系代数2.4.1 关系运算体系 2.4.2 传统的集合运算2.4.3 专门的关系运算2.4.4 关系代数表达式2.4.5 综合举例第40页/共97页41/982.4 2.4 关系代数关系代数本节要求给定关系模式和查询(语义)要求,要会写关系代数 表达式。第41页/共97页42/982.4.1 2.4.1 关系运算体系关系运算体系1.关系代数运算的三个要素2.关系代数运算的分类及运算符3.表示记号第42页/共97页43/981.关系代数运算的三个要素运算对象:关系运算结果:关系运算符:四类集合运算符:将关系看成元组的集合专门的关系运算符:不仅涉及行而且涉及列算术比较符:辅助专门的关系运算符进行操作逻辑运算符:辅助专门的关系运算符进行操作2.4.1 2.4.1 关系运算体系关系运算体系第43页/共97页44/98传统传统的集的集合运合运算符算符 并并差差交交广义笛卡广义笛卡尔积尔积比较比较运算运算符符 大于大于大于等于大于等于小于小于小于等于小于等于等于等于 不等于不等于运算符运算符含义含义运算符运算符含义含义专门专门的关的关系运系运算符算符 选择选择投影投影连接连接除除逻辑逻辑运算运算符符 非非与与或或2.2.关系代数运算的分类及运算符关系代数运算的分类及运算符第44页/共97页45/983.表示记号 R:关系 关系模式为R(A1,A2,An)t:元组,tR:表示t是R的一个元组tAi则表示元组t中相应于属性Ai的一个分量 第45页/共97页46/981 并 2 交 3 差 4 广义笛卡尔积2.4.2 2.4.2 传统的集合运算传统的集合运算第46页/共97页47/98集合运算的相容可并性 如果关系R和S具有相同的元(即两个关系都有n个属性)相应的属性取自同一个域。即关系R第i个属性与另一个关系S的第i个属性具有相同的域(属性名可以不同)。(1in)则称关系R与S具有相容可并性。并()、交()和差()三种运算要求参与运算的两个关系R,S具有相容可并性。第47页/共97页48/981.1.并(并(UnionUnion)相容可并的两个关系R和S的合并,是由属于R或属于S(或属于两者)的所有元组t(不计重复元组)组成的一个新关系。新关系具有和R相同的属性名集合。RS仍为n目关系,由属于R或属于S的元组组成 RS=t|t R t S RS第48页/共97页49/98并 的例子A AB BC C3 36 67 72 25 57 77 72 23 34 44 43 3RA AB BC C3 34 45 57 72 23 3SA AB BC C3 36 67 72 25 57 77 72 23 34 44 43 33 34 45 5RS第49页/共97页50/982.2.差(差(DifferenceDifference)相容可并的两个关系R和S的求差,是由属于R而不属于S的所有元组t组成的一个新关系。新关系具有和R相同的属性名集合。R-S仍为n目关系,由属于R而不属于S的所有元组组成R-S=t|tR tSR-S第50页/共97页51/98差 的例子A AB BC C3 36 67 72 25 57 77 72 23 34 44 43 3RA AB BC C3 34 45 57 72 23 3SA AB BC C3 36 67 72 25 57 74 44 43 3RSA AB BC C3 34 45 5SR第51页/共97页52/983.3.交(交(IntersectionIntersection)相容可并的两个关系R和S的相交,是由既属于R又属于S的所有元组t组成的一个新关系。新关系具有和R相同的属性名集合。RS仍为n目关系,由既属于R且又属于S的元组组成 RS=t|t R t S RS=R(R S)第52页/共97页53/98交 的例子A AB BC C3 36 67 72 25 57 77 72 23 34 44 43 3RA AB BC C3 34 45 57 72 23 3SA AB BC C7 72 23 3RS第53页/共97页54/984.4.广义笛卡尔积(广义笛卡尔积(Extended Cartesian Extended Cartesian ProductProduct)元组连接的记号:R为n元关系,S为m元关系。trts 称为元组的连接(Concatenation)。它是一个(n+m)列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。AB12AB1CD10EaC D10102010EaabbRStrtstrts不要求相容可并第54页/共97页55/984.4.广义笛卡尔积(广义笛卡尔积(Extended Cartesian Extended Cartesian ProductProduct)两个分别为n目和m目的关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。记作:RS trts|trRtsS若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡尔积有k1k2个元组。AB12ABCDEC D10102010EaabbRS11112222 1010201010102010aabbaabbRxS第55页/共97页56/98注意:当两个关系中没有相同属性名时,新关系前n个属性取R的属性名,后m个属性取S的属性名。有相同属性名时,属性名前冠以关系名。RxSAB12R.AB11112222S.AD 1010201010102010EaabbaabbAD10102010EaabbRS第56页/共97页57/981.R为4元关系R(A,B,C,D),S为3元关系(B,C,D),R xS构成的结果集为()元关系.A.4 B.3 C.7 D.6 C课堂练习:课堂练习:第57页/共97页58/982.4.3 2.4.3 专门的关系运算专门的关系运算1.选择2.投影3.连接4.除第58页/共97页59/981.1.选择(选择(SelectionSelection)选择又称为限制(Restriction)。它是在关系R中选择满足给定条件的诸元组,记作:F(R)=t|tR F(t)=真 其中F表示选择条件,它是一个逻辑表达式,运算对象 为常量或元组的属性(可用属性名或列号来表示),取逻辑值真或假。例 Sdept=IS(Student)第59页/共97页60/981.1.选择选择逻辑表达式F的基本形式为:X1 Y1 X2 Y2(西塔)表示比较运算符,它可以是、或。X1、Y1等是属性名或常量或简单函数。属性名也可以用它的序号来代替。(fai佛爱)表示逻辑运算符,它可以是、或。因此选择运算实际上是从关系R中选取使逻辑表达式F为真的元组。这是从行的角度进行的运算。第60页/共97页61/98Student学生snoSnameSsexSageSdept9501李勇李勇男男20CS9502刘晨刘晨女女19IS9503王敏王敏女女18MA9504张立张立男男19IS1.1.选择选择例子例子SnoCnoGrade95011929501285950138895022909502380CnoCnameCpnoCcredit1数据库数据库542数学数学23信息系统信息系统144操作系统操作系统635数据结构数据结构746数据处理数据处理27C语言语言64Course课程SC选修第61页/共97页62/98例1 查询信息系(IS系)全体学生 Sdept=IS(Student)或 5=IS(Student)结果:1.1.选择选择例子例子StudentsnoSnameSsexSageSdept9501李勇李勇男男20CS9502刘晨刘晨女女19IS9503王敏王敏女女18MA9504张立张立男男19ISsnoSnameSsexSageSdept9502刘晨刘晨女女19IS9504张立张立男男19IS结果查询表第62页/共97页63/98例2 查询年龄小于20岁的学生 Sage 20(Student)或 4 20(Student)结果:1.1.选择选择例子例子StudentsnoSnameSsexSageSdept9501李勇李勇男男20CS9502刘晨刘晨女女19IS9503王敏王敏女女18MA9504张立张立男男19ISsnoSnameSsexSageSdept9502刘晨刘晨女女19IS9503王敏王敏女女18MA9504张立张立男男19IS结果查询表第63页/共97页64/982.2.投影(投影(ProjectionProjection)与投影有关的两个记号:一、元组属性分量记号设关系模式为R(A1,A2,An)。它的一个关系设为R。tR表示t是R的一个元组。tAi则表示元组t中相应于属性Ai的一个分量。第64页/共97页65/982.2.投影(投影(ProjectionProjection)与投影有关的两个记号:二、元组属性列分量记号若A=Ai1,Ai2,Aik,其中Ai1,Ai2,Aik是A1,A2,An中的一部分,则A称为属性列或域列。A则表示A1,A2,An中去掉Ai1,Ai2,Aik后剩余的属性组。tA=(tAi1,tAi2,tAik)表示元组t在属性列A上诸分量的集合。第65页/共97页66/982.2.投影(投影(ProjectionProjection)投影运算符的含义从R中选择出若干属性列组成新的关系 A(R)=tA|t R A:R中的属性列投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)第66页/共97页67/98例3 查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影 Sname,Sdept(Student)或 2,5(Student)结果:2.2.投影投影例子例子 StudentsnoSnameSsexSageSdept9501李勇李勇男男20CS9502刘晨刘晨女女19IS9503王敏王敏女女18MA9504张立张立男男19IS结果SnameSdept李勇李勇CS刘晨刘晨IS王敏王敏MA张立张立IS第67页/共97页68/98例4 查询学生关系Student中都有哪些系 Sdept(Student)结果:2.2.投影投影例子例子 StudentsnoSnameSsexSageSdept9501李勇李勇男男20CS9502刘晨刘晨女女19IS9503王敏王敏女女18MA9504张立张立男男19IS结果?SdeptCSISMAISSdeptCSISMA投影后,必须删除重复的行(元组)第68页/共97页69/98例8 查询选修了2号课程的学生的学号。SnoCno=2(SC)SnoCnoGrade95011929501285950138895022909502380SCSno95019502SnoCnoGrade950128595022901.先选择先选择2.再投影再投影Cno=2(SC)SnoCno=2(SC)9501,9502第69页/共97页70/981.(S)表示()A.表示从S关系中挑选3的值小于第二个分量的元组.B.表示从S关系中挑选第3个分量值小于2的元组.C.表示从S关系中挑选第3个分量值小于第二个分量的元组.D.(S)是向关系垂直方向运算.B课堂练习:课堂练习:P74,5(1)、()、(2)小题)小题第70页/共97页71/983.3.连接(连接(JoinJoin)连接运算的含义连接也称为连接。连接运算从R和S的广义笛卡尔积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组。表达式R S=|trR tsS trAtsB A和B:分别为R和S上度数相等且可比的属性组:比较运算符 ABtr ts第71页/共97页一般的连接操作是从行的角度进行运算。例5 ABRSA AB BC Ca1a1b1b15 5a1a1b2b26 6a2a2b3b38 8a2a2b4b41212RB BE Eb1b13 3b2b27 7b3b31010b3b32 2b5b52 2SA AR.BR.BC CS.BS.BE Ea1a1b1b15 5b2b27 7a1a1b1b15 5b3b31010a1a1b2b26 6b2b27 7a1a1b2b26 6b3b31010a2a2b3b38 8b3b31010R SC EA AR.BR.BC CS.BS.BE Ea1a1b1b15 5b2b27 7a1a1b1b15 5b3b31010RS有相同属性名时,属性名前冠以关系名。第72页/共97页73/98两类常用连接运算1.等值连接(equijoin)什么是等值连接为“”的连接运算称为等值连接 等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:R S=|trR tsS trA=tsB A=Btr ts3.3.连接(续)连接(续)第73页/共97页74/98等值连接的例子 例5A AB BC Ca1a1b1b15 5a1a1b2b26 6a2a2b3b38 8a2a2b4b41212RB BE Eb1b13 3b2b27 7b3b31010b3b32 2b5b52 2S 等值连接 R SR.B=S.BA AR.BR.BC CS.BS.BE Ea1a1b1b15 5b1b13 3a1a1b2b26 6b2b27 7a2a2b3b38 8b3b31010a2a2b3b38 8b3b32 2R SR.B=S.B3.3.连接(续)连接(续)第74页/共97页75/982.自然连接(Natural join)自然连接是一种特殊的等值连接,它要求两个 关系中进行比较的分量必须是相同的属性组,并且 要在结果中把重复的属性列去掉。R和S具有相同的属性组B R S=|trR tsS trB=tsB 一般的连接操作是从行的角度进行运算。但自然连接 还需要取消了重复列,所以是同时从行和列的角度 进行运算。tr ts3.3.连接(续)连接(续)第75页/共97页76/983.3.连接(续)连接(续)自然连接为组合操作:设关系R和S,两关系中有公共属性B1、B2、Bn 自然连接运算分为3步:1)计算RXS 2)选择操作:在RXS中选取满足 R.B1=S.B1R.Bn=S.Bn的元组 3)投影操作:去掉S.B1、S.B2、S.Bn(保留R.B1、R.B2、R.Bn)第76页/共97页77/98A AB BC C1 14 46 67 73 32 25 54 49 96 63 35 5R1R23.3.连接(续)连接(续)-自然连接的例子自然连接的例子 R1.AR1.AR1.BR1.BR1.CR1.CR2.AR2.AR2.BR2.BR2.CR2.C1 14 46 68 84 46 61 14 46 67 73 32 27 73 32 28 84 46 67 73 32 27 73 32 25 54 49 98 84 46 65 54 49 97 73 32 26 63 35 58 84 46 66 63 35 57 73 32 2A AB BC C8 84 46 67 73 32 21.R1XR2R1.AR1.AR1.BR1.BR1.CR1.CR2.AR2.AR2.BR2.BR2.CR2.C7 73 32 27 73 32 22.F(R1XR2)3.R1.A,R1.B,R1.C(F(R1XR2)R1.AR1.AR1.BR1.BR1.CR1.C7 73 32 2R1 R2第77页/共97页78/98自然连接的例子 例5A AB BC Ca1a1b1b15 5a1a1b2b26 6a2a2b3b38 8a2a2b4b41212RB BE Eb1b13 3b2b27 7b3b31010b3b32 2b5b52 2S 自然连接 R SA AB BC CE Ea1a1b1b15 53 3a1a1b2b26 67 7a2a2b3b38 81010a2a2b3b38 82 2R SA AR.BR.BC CS.BS.BE Ea1a1b1b15 5b1b13 3a1a1b2b26 6b2b27 7a2a2b3b38 8b3b31010a2a2b3b38 8b3b32 2R SR.B=S.B3.3.连接(续)连接(续)-自然连接的例子自然连接的例子 和等值连接的区别?第78页/共97页79/981.R为4元关系R(A,B,C,D),S为3元关系(B,C,D),R S构成的结果集为()元关系.A.4 B.3 C.7 D.6 2.关系代数的连接运算中当为”=”的连接称之为 ,且当比较的分量是相同的属性组时,则称为()A课堂练习:课堂练习:等值连接,自然连接等值连接,自然连接 P74,5(3)、()、(4)小题)小题第79页/共97页80/98先介绍与除有关的记号:(象集记号)给定一个关系R(X,Y),X和Y为属性组。我们定义,当tX=a时,a在R中的象集(Image Set)为:Ya=tY|tR,tX=a 它表示R中属性组X上值为a的诸元组在Y上分量的集合。例:象集的计算。设R(A,B)如下AB-1aa1ab2st1mm求B14.4.除(除(DivisionDivision)第80页/共97页81/98计算过程考察r的每一个元组t如果tA=1,则把tB放入结果。得结果如下:B -aa ab mmAB-1aa1ab2st1mm4.4.除除(续续)即即 B B1 1=aa,ab,mm=aa,ab,mm第81页/共97页82/98除()的定义给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。R与S的除运算得到一个新的关系P(X)=R(X,Y)S(Y,Z)(1)Ya表示?-关系R中元组在属性组X上分量值为a的象集Ya(2)Y(S)表示?-关系S在Y上的投影则,P怎么计算?见下例4.4.除除(续续)R被除关系S除关系第82页/共97页83/98R的A可以取3个值A1,A2,A3A1的象集为B2A2的象集为B1,B3A3的象集为B3B(S)为B1,B3只有A2的象集包含了B(S)所以RS=A2计算P=RSA AB BA1A1B2B2A2A2B1B1A2A2B3B3A3A3B3B3RB BB1B1B3B3S4.4.除除(续续)例子例子A AA2A2P=RS=XYYP是R中满足下列条件的元组在X属性列上的投影:元组在X上分量值a的象集Ya包含S在Y上投影的集合。P(X)=RS=trX|trRY(S)Ya Ya:a在R中的象集,trX=a第83页/共97

    注意事项

    本文(第 关系数据库.pptx)为本站会员(莉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开