数据库关系运算
这个知识点一般出现在上午题。
这个知识点最为重要,需要多加记忆和理解。其中有 并
、交
、差
、笛卡尔积
、选择
、投影
、连接
、除
。其中一元运算符只有 选择
和 投影
,剩余的都是二元运算符。
-
选择
选择运算
选择运算作用于单个
关系R,得到一个新的关系,它由R中满足特定条件的元祖组成。具体实例:σsalary>1000(Staff)
-
投影
投影运算符
投影运算符也是作用于单个
关系R,得到由R的一个垂直子集构成的新关系,该垂直子集抽取R中指定属性上的值并去掉重复元组
。具体实例:Πsalary,name(Staff)
-
并
并操作
两个关系R和S的并,得到一个包含R、S中所有不同元组的新关系。
如果R和S分别有I
个和J
个元组,那么得到的新关系最多有(I+J)
个元组。
-
交
两个关系R和S的交,得到一个既包含R又包含S关系元组的新关系。
交操作 -
差
集合差运算定义了一个新的关系,它由所有属于R但不属于S的元组构成。
差操作 -
笛卡尔积
笛卡尔积
笛卡尔积运算是将两个关系相乘,得到另外一个关系,它由两个关系中所有可能的元组对构成。
一个关系有I个元组、N个属性,而另一个关系有J个元组、M个属性,那么它们的笛卡尔积将会有(I*J)
个元组、(N+M)
个属性。
-
连接
连接在运算符中是比较复杂的一个,所以在这里最好多花点时间理解一下。连接运算具有有:Θ连接
、等接(Θ连接的特例)
、自然连接
、外连接
、半连接
。
1、Θ连接运算定义一个关系,它包含R和S的笛卡尔积中所有满足谓词F的元组,其中谓词F是比较运算符(<、≤、>、≥、=、≠)之一。
其中两个运算公示是相等的:
Θ连接与笛卡尔积相等
2、自然连接运算对两个关系中所有具有相同名称的属性执行等接运算。自然连接的维数等于关系R与S的维数之和减去X中属性的个数。
3、外连接运算是在连接两个关系时,经常会出现一个关系中某些元组无法在另一个关系中找到匹配元组的情况,换句话说,就是这些元组在连接属性上不存在匹配值。但可能仍希望这些元组出现在结果中,这时就要用到外连接。
4、半连接运算执行了两个关系的连接后,再将结果投影到第一个参与运算的关系的所有属性上。半连接的优点之一就是减少必须参与连接的元组的数目。
- 除
除法运算定义了属性集合C上的一个关系,改关系的元组与S中的每个元组的组合都能在R中找到匹配元组。