赞
踩
基于集合,提供了一系列的关系代数操作:并、差、笛卡尔积(广义积)、选择、投影和更名等基本操作
以及交、连接和关系除等扩展操作,是一种集合思维的操作语言。
关系代数操作以一个或多个关系为输入,结果是一个新的关系。
用对关系的运算来表达查询,需要指明所用操作, 具有一定的过程性。
是一种抽象的语言,是学习其他数据库语言,如SQL等的基础
关系代数操作:集合操作和纯关系操作
某些关系代数操作,如并、差、交等,需满足“并相容性”
并相容性
参与运算的两个关系及其相关属性之间有一定的对应性、可比性或意义关联性
定义:关系R与关系S存在相容性,当且仅当:
数学描述:R∪S ={ t | t∈R v t∈S } ,其中t是元组
并运算是将两个关系的元组合并成一个关系,在合并时去掉重复的元组。R ∪S 与S ∪R 运算的结果是同一个关系
R-S ={ t | t∈R^t∉S }
关系R (<a1 ,a2, …, an >) 与关系S(<b1, b2, …, bm>) 的广义笛卡尔积 (简称广义积,或积或笛卡尔积)运算结果也是一个关系,记作:R x S, 它由 关系R中的元组与关系S的元组进行所有可能的拼接(或串接)构成。
两个关系R和S,它们的属性个数分别为n和m,则笛卡尔积R x S的属性个数=n+ m
两个关系R和S,它们的元组个数分别为x和y, 则笛卡尔积R x S的元组个数= x × y
优先次序自高至低为{ 括弧;θ;﹁;∧;∨} ,其中θ是比较运算符
定义:给定一个关系R, 投影运算结果也是一个关系,它从关系R中选出属性包含在A中的列构成。
投影运算可以对原关系的列在投影后重新排列
R ∩ S = R-(R -S) = S-(S-R)
投影与选择操作只是对单个关系(表)进行操作, 而实际应用中往往涉及多个表之间的操作, 这就需要θ-连接操作
比如:查询数据结构成绩在90分以上的学生姓名(涉及Student, Course, SC)
给定关系R和关系S, R与S的θ连接运算结果也是一个关系,它由关系R和关系S的笛卡尔积中, 选取R中属性A与S中属性 B之间满足θ条件的元组构成。
DBMS可直接进 行连接操作,而不必先形成笛卡尔积,上述步骤只是便于理解。
给定关系R和关系S, R与S的等值连接运算结果也是一个关系,它由关系R和关系S的笛卡尔积中选取R中属性A与S中属性 B上值相等的元组所构成。
给定关系R和关系S, R与S的自然连接运算结果也是一个关系,它由关系R和关系S的笛卡尔积中选取相同属性组B上值相等的元组所构成。
检索是否涉及多个表,如不涉及,则可直接采用并、差、交、选择与投影,只要注意条件书写正确与否即可
如涉及多个表,则检查
连接完后,可以继续使用选择、投影等运算,即所谓数据库的“选投联”操作
除法运算经常用于求解“查询…全部的/所有的…”问题
前提条件:给定关系R(A1,A2, …,An)为n度关系,关系S(B1,B2, …,Bm)为m度关系。如果可以进行关系R与关系S的除运算,当且仅当:属性集{ B1,B2, …, Bm}是属性集{ A1,A2, …,An }的真子集,即m < n。
定义:关系R 和关系S的除运算结果也是一个关系,记作R÷S,分两部分来定义
两个关系R与S进行连接时,如果关系R(或S)中的元组在S(或R)中找不到相匹配的元组,则为了避免该元组信息丢失,从而将该元组与S(或R)中假定存在的全为空值的元组形成连接,放置在结果关系中,这种连接称之为外连接(Outer Join)。
外连接= 自然连接(或θ连接) + 失配的元组(与全空元组形成的连接)
外连接的形式:左外连接、右外连接、全外连接
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。