C语言 关系运算与关系代数
关系数据库模型;关系数据模型概述关系数据模型的结构关系数据模型的完整性规则关系代数关系演算;1. 关系数据模型的数据结构 2. 关系数据模型的操纵(运算)3. 关系数据模型的完整性约束 ;关系数据模型的操作查询选择、投影、连接、除、并、交、差数据更新插入、删除、修改; 概述 传统的集合运算 专门的关系运算;1. 关系代数2. 运算的三要素3. 关系代数运算的三个要素4. 关系代数运算的分类5. 表示记号;1.关系代数一种抽象的查询语言用对关系的运算来表达查询;2.关系代数运算的三个要素运算对象:关系运算结果:关系运算符:四类
;集合运算符将关系看成元组的集合运算是从关系的“水平”方向即行的角度来进行专门的关系运算符不仅涉及行而且涉及列算术比较符辅助专门的关系运算符进行操作逻辑运算符辅助专门的关系运算符进行操作;集合运算符;专门的关系运算符;4.关系代数运算的分类 传统的集合运算 并、差、交、广义笛卡尔积专门的关系运算 选择、投影、连接、除;5.表示记号 (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称为元组的连接。它是一个n + m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。 ;4)象集Zx 给定一个关系R(X,Z),X和Z为属性组。当t[X]=x时,x在R中的象集(Images Set)为: Zx={t[Z]|t ?R,t[X]=x} 它表示R中属性组X上值为x的诸元组在Z上分量的集合。 ;? 概述??传统的集合运算? 专门的关系运算;并差交广义笛卡尔积;R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域
R∪S 仍为n目关系,由属于R或属于S的元组组成 R∪S = { t|t ? R∨t ?S };A;R和S具有相同的目n相应的属性取自同一个域
R - S 仍为n目关系,由属于R而不属于S的所有元组组成 ?R -S = { t|t?R∧t?S };A;R和S具有相同的目n相应的属性取自同一个域
R∩S仍为n目关系,由既属于R又属于S的元组组成 R∩S = { t|t ? R∧t ?S } R∩S = R –(R-S);A;Rn目关系,k1个元组Sm目关系,k2个元组R×S 列:(n+m)列的元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1×k2个元组R×S = {tr ts |tr ?R ∧ ts?S };A;概述传统的集合运算专门的关系运算;选择投影连接除;1) 选择又称为限制(Restriction)2) 选择运算符的含义在关系R中选择满足给定条件的诸元组 σF(R) = {t|t?R∧F(t)= '真'}F:选择条件,是一个逻辑表达式,基本形式为: [?( ] X1θY1 [ )][φ [?( ] X2θY2 [ )]]…θ:比较运算符(>,≥,<,≤,=或<>)X1,Y1等:属性名、常量、简单函数;属性名也可以用它的序号来代替;φ:逻辑运算符(∧或∨)[ ]:表示任选项…:表示上述格式可以重复下去;3) 选择运算是从行的角度进行的运算
4) 举例设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。;学 号Sno;(b);?;[例1] 查询信息系(IS系)全体学生 σSdept = 'IS' (Student)或 σ5 ='IS' (Student)结果: ;[例2] 查询年龄小于20岁的学生 σSage < 20(Student) 或 σ4 < 20(Student)结果: