概述
专门的关系运算
(1) R,t∈R,t[Ai]
设关系模式为R(A1,A2,…,An)
它的一个关系设为R
t∈R表示t是R的一个元组
t[Ai]则表示元组t中相应于属性Ai的一个分量
(2) A,t[A], A(上面有一横)
若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}后剩余的属性组。
(3) tr ts(上面有一个弧)
R为n目关系,S为m目关系。
tr ∈R,ts∈S, tr ts(上面有一个弧)称为元组的连接。
tr ts(上面有一个弧)是一个n + m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。
(4)象集Zx
给定一个关系R(X,Y),X和Y为属性组。
当t[X]=x时,x在R中的象集(Images Set)为:
Yx={t[Y]|t ∈R,t[X]=x}
它表示R中属性组X上值为x的诸元组在Y上分量的集合
学生-课程数据库:p79-80
学生关系Student、课程关系Course和选修关系SC
- x1在R中的象集
Zx1 ={Z1,Z2,Z3}, - x2在R中的象集
Zx2 ={Z2,Z3}, - x3在R中的象集
Zx3={Z1,Z3}
1. 选择
- 选择又称为限制(Restriction)
- 选择运算符的含义
在关系R中选择满足给定条件的诸元组
σF( R ) = {t|t∈R∧F(t)= ‘真’}
F:选择条件,是一个逻辑表达式,取值为“真”或“假”
基本形式为:X1θY1
θ表示比较运算符,它可以是>,≥,<,≤,=或<>
选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算
例:
2. 投影
从R中选择出若干属性列组成新的关系
πA( R ) = { t[A] | t ∈R }
A:R中的属性列
投影操作主要是从列的角度进行运算
投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)
例:查询学生的姓名和所在系。
即求Student关系上学生姓名和所在系两个属性上的投影
πSname,Sdept(Student) πSdept(Student)
π2,5(Student) π5(Student)
查询学生的姓名和所在系。
即求Student关系上学生姓名和所在系两个属性上的投影
πSname,Sdept(Student) πSdept(Student)
π2,5(Student) π5(Student)
3.除运算
给定关系R (X,Y) 和S (Y,Z),其中X,Y,Z为属性组。
R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。
R与S的除运算得到一个新的关系P(X),
P是R中满足下列条件的元组在 X 属性列上的投影:
元组在X上分量值x的象集Yx包含S在Y上投影的集合,记作:
R÷S={tr[X]|tr∈R∧πY(S)∈Yx}
Yx:x在R中的象集,x = tr[X]
除操作是同时从行和列角度进行运算
例: 设关系R、S分别为下图的(a)和(b),RS的结果为图©
例:由选课关系SC、课程关系C求下表SC÷CC
最后
以上就是光亮眼睛为你收集整理的数据库系统概论 关系代数:专门的关系运算的全部内容,希望文章能够帮你解决数据库系统概论 关系代数:专门的关系运算所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复