- 1、本文档共29页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 关系数据库2.4.2专门的关系运算
2.4.2专门的关系运算 专门的关系运算包括: 选择、投影、连接、除等。 为了叙述方便,我们先引入几个记号: ⒈ 分量:设关系模式为 R(A1, A2, …, An)。 它的一个关系设为R.?? t∈R表示t是R的一个元组。t[Ai] 则表示元组t中相应于属性Ai 的一个分量。 ⒉ 属性列或域列: 若A={Ai1, Ai2, …, Aik}, 其中Ai1, Ai2, …, Aik是A1, A2, …, An中的一部分,则A称为属性列或域列。 t[A]=(t[Ai1], t[Ai2], …, t[Aik])表示元组t在属性列A上诸分量的集合。 A 则表示{ A1, A2, …, An }中去掉{Ai1, Ai2, …, Aik}后剩余的属性组。 ⒊ 元组的连接: R为n目关系,S为m目关系。 t r∈R ,t s∈S ,t r t s称为元组的连接(Concatenation)。 它是一个(n+m)列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。 ⒋ 象集(Images Set): 给定一个关系R(X,Z),X和Z为属性组。我们定义,当t[X]=x时,x在R中的象集(Images Set)为: Z x ={t[Z]|t∈R, t[X]=x} 它表示R中属性组X上值为x的诸元组在Z上分量的集合。 下面介绍:专门的关系运算 选择、投影、连接、除 ⒈ 选择(Selection) 选择又称为限制(Restriction)。它是在关系R中选择满足给定条件的诸元组,记作: σ F (R) = {t|t∈R∧F(t)=真} 其中F表示选择条件,它是一个逻辑表达式,取逻辑值‘真’或‘假’。 逻辑表达式F由逻辑运算符非、∧或∨ 连接各算术表达式组成,算术表达式的基本形式为: X1θY1 θ表示比较运算符,它可以是>、≥、<、≤、=或≠。X1、Y1等是属性名或常量或简单函数。属性名也可以用它的序号来代替(1,2…)。 因此选择运算实际上是从关系R中选取使逻辑表达式F为真的元组。这是从行的角度进行的运算。 举例: 设有一个学生-课程关系数据库,包括学生关系Student、课程关系Course和选修关系SC。 下面的许多例子将对这三个关系进行运算。 例1 查询信息系(IS系)全体学生 ??? σSdept =IS (Student)? 或 ??? σ5 =IS (Student) 例2 查询年龄小于20岁的元组 σ Sage20 (Student) 或 σ 420 (Student) ⒉ 投影(Projection) 关系R上的投影是从R中选择出若干属性列组成新的关系。记作: πA(R) = { t[A] | t∈R } 其中A为R中的属性列。 例3 查询选修关系SC在学号和课程号两个属性上的投影 πSno, Cno (SC) 或 π1, 2 (SC) 例4 查询学生关系Student中都有哪些系,即查询学生关系Student在所在系属性上的投影 πSdept (Student) 投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。 ⒊ 连接(Join) 连接也称为θ连接。它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作: R AθBS={ t r t s | t r∈R∧t s∈S∧ t r [A] θ t s [B] } 其中A和B分别为R和S上度数相等且可比的属性组。θ是比较运算符。连接运算从R和S的笛卡尔积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系θ的元组。 连接运算中有两种最为重要也最为常用的连接: 一种是等值连接(equi-join),另一种是自然连接(Natural join)。 θ为“=”的连接运算称为等值连接。它是从关系R与S的笛卡尔积中选取A、B属性值相等的那些元组。等值连接表示为: R A=BS={ t rt s | t r∈R∧t s∈S∧t r[A]=t s[B] } 等值连接R.B=S.B 自然连接(Natural join) 自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。即若R和S具有相同的属性组B,则自然连接可记作: R S={ t rt s | t r∈R∧t s∈S∧t r[A]=t s[B] } 自然连接R.B=S.B 一般的连接操作是从行的角度进行运算。但自然连接还需要取消
文档评论(0)