第2讲 关系数据库基本原理2.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
An Introduction to Database Systems 第二讲 关系数据库基本原理 关系代数 关系代数的运算可分为两类: .传统的集合运算,如并、交、差、广义笛卡尔积。这类运算将关系看成元组的集合,其运算是以关系的行为单位来进行的。 .专门的关系运算,如选择、投影、连接、除。这类运算表达了实用系统中应用最普遍的查询操作。 上述两类运算的运算对象是关系,运算结果也是关系。 一、传统的集合运算 传统的集合运算包括四种运算:并(∪)、交(∩)、差(—)、广义笛卡尔积(X)。 1.并(Union) 设关系R和关系S具有相同的目n(n个属性),且相应的属性取自同一个域。则关系R和关系S的并记为R∪S,其结果仍为n目关系,由属于R或属于S的元组组成。如R和S的元组分别用两个圆表示,则R∪S的集合如图所示虚影部分元组。 【例1】设某公司有两个子公司,其营业库如表所示。 营业库1 营业库2 现如欲对全公司营业情况进行统计,操作时首先把两表内容合并为一个表,再在一个表中进行统计,即求营业库=营业库1∪营业库2。 2.交(Intersection)   设关系R和关系S具有相同的目n,且相应的属性取自同一个域。关系R和关系S的交记为R∩S,结果仍为n目关系,由既属于R又属于S的元组组成。如R和S的元组分别用两个圆表示, 则R∩S集合运算结果可用图示意,则两圆相交部分元组表示R与S的交。 成绩1 成绩2 【例2】在输人学生成绩时,为保证数据正确,常让两人重复输入成绩数据,形成两个成绩文件如下表所示。由于两人同时对同一学生成绩输入出错而且输入的错误数据完全一样的概率几乎为0, 因此认为,两人输人数据一致的部分数据是准确的,即求取成绩1∩成绩2,其结果被认为是正确的, 3.差(Difference)   设关系R和关系S具有相同的目n,且相应的属性取自同一个域。定义关系R和关系S的差记为R-S,其结果仍为n目关系,由属于R而不属于S的元组组成。   如R和S的元组分别用两个圆表示,则R-S的集合如图所示。比较“交”图和“差”,显然R=(R∩S)∪(R-S)或R-S=R-(R∩S)。 【例3】在例2中,两人输入完全一致的数据是正确的,两人输入不同的部分数据则应找出错误原因,以防丢失正确数据。因而应分别找到(成绩l-成绩2)及(成绩2-成绩1),并对二个结果进行分析,与实际成绩复核,检查其中哪一人输入是正确的,或找到正确数据再补充录入。 (成绩l-成绩2)和(成绩2-成绩1)的结果如表所示。 4.笛卡尔积(Extended Cartesian Product)   两个分别为n个元组和m个元组的关系R和S的广义笛卡尔积R×S是一个 (n×m)元组的集合。元组的前n个分量是R的一个元组,后m个分量是S的一个元组 若R有K1个元组,S有K2个元组,则R×S有K1×K2个元组。记为R×S 关系的数学概念可从日常生活上引出。假定:   M={王强,张伟,戈华},是男性集合;   W={李丽,刘英},是女性集合。 若M和W中存在夫妻关系时,那么可能的配对如下: M*W={(王强,李丽),(王强,刘英),(张伟,李丽),(张伟,刘英),(戈华,李丽),(戈华,刘英)} 在数学上把所有这些可能配对的集合叫作“笛卡尔积”,直观意义就是诸集合各元素间一切可能的组合。笛卡尔积可看成一个二维表 二、专门的关系运算 专门的关系运算包括四种运算即选择(σ)、投影(Π)、连接(∞)和除法(÷),是关系数据库数据维护、查询、统计等操作的基础。 1 选择操作:设有关系R, 在关系R中求取满足给定条件F的元组组成新的关系的运算称为选择。 记作σF(R)。 其中F是一个条件表达式,其值为“真”或“假”。 σF(R)是从关系R中选取使条件表达式F为真的元组。这是以行为处理单位进行的运算。 F是由常量、变量及算术比较符{ ,≥,,≤,=,≠ } 等构成。 已知学生关系如下: student(姓名,学号,性别,出生年月,籍贯,系别,入学年份) σ姓名=‘王红’(student) σ籍贯=‘江苏’ and 出生年份=‘1980’(student) 复合选择操作: σF1( σF2(R) )=σF2( σF1(R) ) 2 投影操作:设有关系R,在关系R中求指定的若干个属性列组成新的关系的运算称作投影,如果新关系中包含重复元组,则去掉重复元组。记作ΠA(R)。 其中A为欲选取的属性列列名的列表。这是以列作为处理单位进行的运算 已知学生关系如下: student(姓名,学号,性别,出生年月,

文档评论(0)

wxc6688 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档