2、除运算示例 例1:设关系R、S分别为下图的(a)和(b),R÷S的结果为图(c) R A B B C b1 b R÷S A b a 1
例1:设关系R、S分别为下图的(a)和(b),R÷S的结果为图(c) 2、除运算示例
分析 在关系R中,A可以取四个值{a1,a2,a3,a4 a1的象集为(b1,c2),(b2,c3),(b,c1) a2的象集为(b2,cn),(b2,c)} a2的象集为(b2,c)} a2的象集为{(h,c) 在(B,O上的投影为 {(b1,c2),(b2,c1),(b2,c3)} 只有a的象集包含了在(B,O属性组上的投影 所以R÷S={a
分析 在关系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,c1),(b2,c3) } 叧有a1的象集包含了S在(B,C)属性组上的投影 所以R÷S ={a1 }
写出R÷S= R S R÷S A C B al a B2827 4 D6358 3 4 a
写出 R ÷S= A B C D a1 2 4 6 a3 8 2 3 a1 2 3 5 a4 7 7 8 C D 3 5 4 6 A B a1 2 R S R ÷ S
例2:有关系A、B1、B2和B3,请分别计算AB1、A/B2及AB3。 分析:在关系中,sno可以取四个值{s1,s2,s3,s4 sl1的象集为{p1,p2,n3,p4} s2的象集为{p1,p2} s3的象集为{p2} s的象集为{p2,p4 sIO pno o pno pno P 2 s1 p2 B1 B2 p s2 p1 B3 snto s 2 4p2 s1 snO s1 A A/B1 A/B2 A/B3
例2:有关系A、B1、B2和B3,请分别计算A/B1、 A/B2及A/B3。 分析:在关系中,sno可以取四个值{s1,s2,s3,s4} s1的象集为{p1,p2,p3,p4} s2的象集为{p1,p2} s3的象集为{p2} s4的象集为{p2,p4}
例4:查询至少选修1号课程和3号课程的学生学号。 解题思路:首先建立一个临时关系K, 然后求smcn(SC)÷K Cn 200215121象集{1,2,3} 3 200215122象集{2,3} Sno Cno K={1,3} 200215121 200215121 于是:∏ Is(SC)÷K={200215121} 200215121 1232 200215122 200215122 3
例4:查询至少选修1号课程和3号课程的学生学号。 解题思路:首先建立一个临时关系K, 然后求πSno,Cno(SC)÷K 200215121象集{1,2,3} 200215122象集{2,3} K={1,3} 于是:πSno,Cno(SC)÷K={200215121} Cno 1 3 Sno Cno 200215121 1 200215121 2 200215121 3 200215122 2 200215122 3