(四)数据库基础——关系代数运算之二元运算
博客专区 > Amui 的博客 > 博客详情
(四)数据库基础——关系代数运算之二元运算
Amui 发表于3年前
(四)数据库基础——关系代数运算之二元运算
  • 发表于 3年前
  • 阅读 11
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

摘要: 并运算∪, 集合差运算-, 集合交运算∩, 笛卡尔积运算× (Cartesian-product), 自然连接运算(全外连接), 左外连接, 右外连接


member:

name

age

sex

Amui

3

f

Lily

5

f

Tom

7

m

 

student

stu_id

name

grade

111

Amui

1

222

Lily

2

333

Jane

1

444

Mark

3


  1. 并运算∪

    a)         关系是集合,所以重复值被去除。

    b)         做并运算的关系必须是相容的。即

            i.   关系rs是同元的,两个关系的属性数目必须相同,

            ii.  对于任意的ir的第i个属性的域必须和s的第i个属性的域相同。

Πname (member) ∪Πname (student)

name

Amui

Lily

Tom

Jane

Mark

 

2. 集合差运算-

        a)  集合差运算使我们可以找出在一个关系中存在而不在另一个关系中的那些元组。

        b)与并运算一样,参与差运算的两个关系必须是相容的。

Πname (member) -Πname (student)

name

Tom

 

3. 集合交运算∩

        a)       rs=r-(r-s)

Πname (member) Πname (student)

name

Amui

Lily

 

4. 笛卡尔积运算× Cartesian-product

        a) 通过笛卡尔积运算可以将任意两个关系的信息组合在一起。

member×student

member.name

age

sex

stu_id

student.name

grade

Amui

3

f

111

Amui

1

Amui

3

f

222

Lily

2

Amui

3

f

333

Jane

1

Amui

3

f

444

Mark

3

Lily

5

f

111

Amui

1

Lily

5

f

222

Lily

2

Lily

5

f

333

Jane

1

Lily

5

f

444

Mark

3

Tom

7

m

111

Amui

1

Tom

7

m

222

Lily

2

Tom

7

m

333

Jane

1

Tom

7

m

444

Mark

3

 

5. 自然连接运算(全外连接)

        a) 自然连接运算首先形成两个关系的笛卡尔积,然后基于两个关系模式中都出现的属性的相等性进行选择,最后去除重复性。 


Member自然连接student

member.name

age

sex

stu_id

grade

Amui

3

f

111

1

Lily

5

f

222

2

Tom

7

m

Null

null

Jane

null

null

333

1

Mark

null

null

444

3

 

6. 左外连接

Member左外连接student

member.name

age

sex

stu_id

grade

Amui

3

f

111

1

Lily

5

f

222

2

Tom

7

m

Null

null

 

7.右外连接

Member右外连接student

member.name

age

sex

stu_id

grade

Amui

3

f

111

1

Lily

5

f

222

2

Jane

null

null

333

1

Mark

null

null

444

3

 

 8. 除运算÷

摘抄自百度百科

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) SR的共同属性,其元组看做整体 k

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

*/

解答如下:

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

a1的象集为:{b1,c2),(b2,c3),(b2,c1}

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

a3的象集为:{b4,c6}

a4的象集为:{b6,c6}

S在(B,C)上的投影为{(b1,c2),(b2,c3),(b2,c1)}

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





共有 人打赏支持
粉丝 3
博文 55
码字总数 24802
×
Amui
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: