数据库~~~投影与除操作

投影运算的含义简单点就是:从表中选择需要的属性列。

列是属性,行是元组..
而且作投影之后可能会出现重复项,比如:
A B C
a1 b1 c1
a1 b2 c2
a2 b2 c3
作A的投影就是a1, a2; 减少了一行
总结:
并:属性不变,元组可能增加(集合相等时不增加)
交:属性不变,元组可能减少(集合相等时不减少)
投影:属性可能减少(全投影时不减少),元组可能减少(投影后无重复项时不减少)
笛卡尔积:属性增加,元组可能增加(只有1个元组时不增加)

除运算:
R:

A
B
C
a1
b1
c2
a2
b3
c7
a3
b4
c6
a1
b2
c3
a4
b6
c6
a2
b2
c3
a1
b2
c1

S:

B
C
D
b1
c2
d1
b2
c1
d1
b2
c3
d2

R÷S

A
a1

/*

(1) 找S与R的共同属性,其元组看做整体 k

(2)选择R中包含k的 非S与R相同属性的 属性 即为R÷S

*/

解答如下:

在关系R中,A可以取四个值{a1,a2,a3,a4},其中:

a1的象集为:{(b1,c2),(b2,c3),(b2,c1)}就是a1 对应bc属性上的值

a2的象集为:{(b3,c7),(b2,c3)}

a3的象集为:{(b4,c6)}

a4的象集为:{(b6,c6)}

S在(B,C)上的投影为{(b1,c2),(b2,c3),(b2,c1)}。,只取BC两列

显然只有a1的象集(B,C)a1包含S在(B,C)属性组上的投影,全部包含,所以R÷S={a1}。

数据库 什么操作最费时间啊?
 笛卡尔积,选择,投影,除。应该是笛卡尔积,因为属性增加了,计算量也随之而增加
原文地址:https://www.cnblogs.com/fickleness/p/3259433.html