- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关系数据库new.ppt
关系模型与其他模型相比,最有特色的是它的数据库语言。 这种语言灵活方便、表达能力和功能都很强。 目前关系数据库所使用的语言一般都具有定义、查询、更新和控制一体化的特点,而查询是最主要的部分。 所以说,关系数据库的核心部分是查询,故又称为查询语言,而查询的条件要使用关系运算表达式来表示。 因此,关系运算是设计关系数据语言的基础。 按表达查询的方法不同,关系运算可分为关系代数和关系演算两大类。 ● 4.2 关系代数 关系代数是对关系进行集合代数运算,是基于关系代数的操作语言,称为关系代数语言,简称关系代数。 它是由IBM在一个实验性的系统上实现的,称为ISBL(Information System Base Language)语言。ISBL的每个语句都类似于一个关系代数表达式。 关系代数的运算对象是关系,运算结果也是关系,关系代数用到的运算符主要包括四类: 1) 集合运算符:∪(并运算),-(差运算),∩(交运算),×(广义笛卡儿积)。 2) 专门的关系运算符:σ(选择),π(投影),(连接),÷(除)。 3) 比较运算符:>(大于),≥(大于等于),<(小于),≤(小于等于),=(等于),≠(不等于)。 4) 逻辑运算符:?(非),∧(与),∨(或)。 ● 4.2.1 传统的集合运算 设关系R和S具有相同的目n(即两个关系都有n个属性),且相应的属性取自同一个域。 1. 并(Union)运算 R∪S={t| t ?R ∨ t ?S}. R和S并的结果仍为n目关系,其数据由属于R或属于S的元组组成。 即R和S的所有元组合并,删去重复元组,组成一个新关系,其结果仍为n目关系。 对于关系数据库,记录的插入 和添加可通过并运算实现。 2. 差(Difference)运算 R – S ={ t | t ?R ∧ t ?S}. R和S差运算的结果关系仍为n目关系,其数据由属于R而不属于S的所有元组组成,即R中删去与S中相同的元组,组成一个新关系,其结果仍为n目关系。记作: R-S={t|t∈R∧┐t∈S} 通过差运算,可实现关系数据库记录的删除。 3. 交(Intersection)运算 R∩S = { t | t?R ∧ t ?S }. R和S交运算的结果关系仍为n目关系,其数据由既属于R同时又属于S的元组组成, ,即R与S中相同的元组,组成一个新关系。 如果两个关系没有相同的元组,那么它们的交为空。 两个关系的并和差运算为基本运算(即不能用其他运算表达的运算),而交运算为非基本运算,交运算可以用差运算来表示:R∩S=R-(R-S) 4. 广义笛卡儿积(Extended Cartesian Product)运算 两个分别为n目和m目关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡尔积有k1*k2个元组,记作 R×S={tr⌒ts| tr∈R,∧ts∈S} 关系的广义笛卡尔积可用于两关系的连接操作(连接操作将在下一节中介绍)。 专门关系运算的定义 (1) 选择(Selection)运算 选择运算又称为限制运算。选择运算指在关系R中选择满足给定条件的元组,记作: σF(R)= {t | t ?R ∧ F(t)= 真 }. 其中:F表示选择条件,它是一个逻辑表达式,取值为“真”或“假”。F由逻辑运算符﹁(非)、∧(与)和∨(或)连接各条件表达式组成。 条件表达式的基本形式为:X1θY1. 其中:θ是比较运算符,它可以是>、≥、<、≤、=、≠中的一种;X1和Y1是属性名、常量或简单函数;属性名也可以用它的序号来代替。 ● 4.2.2 专门的关系运算 设学生课程数据库,其关系模式为: 学生(学生,姓名,年龄,所在系); 课程(课程号,课程名,学分); 选课(学号,课程号,成绩). 【例4-1】用关系代数表示在学生课程数据库中查询计算机系的全体学生的操作。 σ所在系= ‘计算机系’ (学生) 【例4-2】用关系代数表示在学生课程数据库中查询年龄小于20岁的学生的操作。 σ年龄20(学生) (2) 投影(Projection)运算 投影运算也是单目运算,关系R上的投影是从R中选择出若干属性列,组成新的关系,即对关系在垂直方向进行的运算,从左到右按照指定的若干属性及顺序取出相应列,删去重复元组。记作:ΠA(R)={t[A]|t∈R} 其中A为R中的属性列,Π为投影运算符。 从其定义可看出,投影运算是从列的角度进行的运算,这正是选取运算和投影运算的区别所在。选取运算是从关系的水平方向上进行运算的,而投影运算则是从关系的垂直方向上
文档评论(0)