数据库除运算怎么理解

数据库除运算怎么理解,第1张

关系R除以关系S的结果为关系T,则T包含所有在R但不在S中的属性及其值,且T的元组与S的元组的所有组合都在R中。除运算的含义–给定关系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除以T时:(不区分大小写)

1..先找出R表中和T表相同的属性,这里是B和C。

2.也就是说R表中的其他属性A可以取值为{a,b,c}

3.其中, a的象集为{(b,c),(d,e)},b的象集为{(b,c),(d,e)},c的象集为{(a,b)}

4.而T在B和C上的投影为S{(b,c),(d,e)},这时候,我们在步骤三中找一个象集是包含S集合的,即a,b的象集包含了T在B,C

属性组上的投影,所以R÷T={a,b}。

在关系数据库中,基本的关系运算有三种,它们是选择、投影和连接。关系的基本运算有两类:一类是传统的集合运算(并、差、交等),另一类是专门的关系运算(选择、投影、连接、除法、外连接等),有些查询需要几个基本运算的组合,要经过若干步骤才能完成。

一、传统的集合运算

1、并(UNION) 设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为∪。记为T=R∪S。

2、差(DIFFERENCE) R和S的差是由属于R但不属于S的元组组成的集合,运算符为-。记为T=R-S。

3、交(INTERSECTION) R和S的交是由既属于R又属于S的元组组成的集合,运算符为∩。记为T=R∩S。 R∩S=R-(R-S)。

二、选择运算

从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。这种运算是从水平方向抽取元组。 在FOXPRO中的短语FOR和WHILE均相当于选择运算。

如:LIST FOR 出版单位='高等教育出版社' AND 单价<=20

三、投影运算

从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行的运算,相当于对关系进行垂直分解。在FOXPRO中短语FIELDS相当于投影运算。 如: LIST FIELDS 单位,姓名

四、连接运算

连接运算是从两个关系的笛卡尔积中选择属性间满足一定条件的元组。

五、除法运算

在关系代数中,除法运算可理解为笛卡尔积的逆运算。

设被除关系R为m元关系,除关系S为n元关系,那么它们的商为m-n元关系,记为R÷S。商的构成原则是:将被除关系R中的m-n列,按其值分成若干组,检查每一组的n列值的集合是否包含除关系S,若包含则取m-n列的值作为商的一个元组,否则不取。

扩展资料:

数据库除运算:

除运算的含义–给定关系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的结果为a1,x相当于A y 相当于B,C z相当于D,按照除运算规则,我们不必关注D。只需比较B,C当S关系中的B,C所有的组合(b1,c2)(b2,c3)(b2,c1)都出现在R关系中时,结果才为A

R÷S = {tr[X] | tr&IcircR∧πY (S) íYx },Yx:x在R中的象集,x = tr[X]。除 *** 作是同时从行和列角度进行运算。

参考资料来源:百度百科-关系运算

参考资料来源:百度百科-数据库除运算


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6905624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存