6.3.2 专门的关系运算
1)选择(selection)
选择运算是指从关系R中选择满足给定条件的所有元组,记作:
σF(R)={t|t∈R∧F(t)='真'}
F表示选择条件,选择运算就是从R中提取能够使F条件成立的元组,是从行的角度进行的运算。投影结果会取消重复的元组。
如:以下是对学生表Student(Sno,Sname,Ssex,Sage,Sdept)中的数据进行选择运算:
Student
[例1]查询性别为男的全体学生。
σSsex='男'(Student)
结果为:
[例2]查询年龄小于19岁的全体学生。
σSage<19(Student)
2)投影(projection)
关系R上的投影是从R中选择出若干属性列组成新的关系,是从列的角度进行的运算。投影的结果会取消重复的行。
记作ΠA(R)={t[A]|t∈R},其中A为R中的属性列。
[例3]查询Student表中所有学生的学号和姓名。
ΠSno,Sname(Student)
结果为:
[例4]查询Student表中所有的学生都分布在哪些系。
ΠSdept(Student)
结果为:
3)连接(join)
连接是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作:
其中,θ为比较运算符,A和B分别为R和S上度数相等且可比的属性组。连接运算是从R和S的笛卡尔积中选取R中的A属性组和S中的B属性组满足θ条件的元组。
连接运算中有两种最为重要的连接,一种是等值连接,一种是自然连接。
等值连接是指从关系R和S的笛卡尔积中选取A、B属性值相等的那些元组,即θ为“=”的连接运算。用公式表示如下:
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。用公式表示如下:
如:对于以下两个关系R和S
则的结果分别如下:
4)除(division)
设有关系R和S,R能被S除的条件是R中要包含有S中的属性。
R除以S的商T的属性由R中那些不出现在S中的属性组成,其元组则由S中出现的所有元组在R中所对应的相同值所组成。记作:
如:已知有如下R和S
则R÷S的结果为{a1},因为在R中,当属性列A的值为a1时,其属性列B的值包含了S中属性列B中的所有值。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。