150 likes | 343 Views
作业 2&3 讲评. 第 1 - 5 题. 第 1 - 4 题是基本概念题,大家在书上就可以找到定义 第 5 题要求:给 5 个查询,要求大家写出关系代数,关系演算表达式。问题比较多,主要讲一下这个部分. 第 5(1) 题 :. 找出供应工程 J1 零件的供应商号码 SNO 考察: 选择和投影操作 关系代数:∏ sno ( JNO=‘J1’ ( SPJ)) ALPHA 语言: GET W(SPJ.SNO): SPJ.JNO = ‘J1’ QBE: 这道题问题大家都能正确解答. 第 5(2) 题. 供应工程 J1 零件 P1 的供应商号码 SNO
E N D
第1-5题 • 第1-4题是基本概念题,大家在书上就可以找到定义 • 第5题要求:给5个查询,要求大家写出关系代数,关系演算表达式。问题比较多,主要讲一下这个部分
第5(1)题: • 找出供应工程J1零件的供应商号码SNO • 考察: 选择和投影操作 • 关系代数:∏sno( JNO=‘J1’(SPJ)) • ALPHA语言:GET W(SPJ.SNO): SPJ.JNO = ‘J1’ • QBE: • 这道题问题大家都能正确解答
第5(2)题 • 供应工程J1零件P1的供应商号码SNO • 考察:两个选择条件,一个投影 • 关系代数:∏sno( JNO=‘J1’ ∧PNO=‘P1’(SPJ)) • ALPHA语言:GET W(SPJ.SNO): SPJ.JNO = ‘J1’ ∧SPJ.PNO = ‘P1’ • QBE:
(1)-(2)存在问题 • 大家基本都能正确解答这道题。 1 有同学在写两个与条件的关系代数的时候 ∏sno( JNO=‘J1’ ∧PNO=‘P1’(SPJ))中把”∧”写成 “,” 2 在QBE表达式很多同学P.S1没有下划线,那么P.S1就成了一个查询的条件。所以注意表示查询结果的属性和表示连接的属性要标上下划线。
第5(3)题 • 供应工程J1零件为红色的供应商号码 • 考察:两表的连接,和各个单表的选择 • 关系代数 ∏SNO(∏SNO,PNO( JNO=‘J1’(SPJ)) ∞∏PNO( color = ‘红’)(P)) • ALPHA语言: RANGE P PX GET W(SPJ.SNO): PX(PX.PNO = SPJ.PNO∧SPJ.JNO=‘J1’ ∧PX.color=‘红’) • QBE:
第5(4)题 • 求没有使用天津供应商生产的红色零件的工程号JNO • 考察:多个连接,集合差,选择,投影操作 • 关系代数: ∏JNO(J)-∏JNO(∏SNO( CITY = “天津”)(S)) ∞∏SNO,PNO,JNO(SPJ) ∞ ∏PNO( COLOR=“红”)(P) • ALPHA: RANGE SPJ SPJX P PX S SX GET W(J.JNO): ¬ SPJX(SPJX.JNO=J.JNO^ SX(SX.SNO = SPJX.SNO)^SX.CITY=“天津”^ PX(PX.PNO=SPJX.PNO^PX.COLOR = “红”))
第5(4)题 • QBE
5(4)问题 • 错误: ∏JNO(SPJ)-∏JNO(∏SNO( CITY = “天津”)(S)) ∞∏SNO,PNO,JNO(SPJ) ∞ (∏PNO( COLOR=“红”)(P)) 没有考虑未使用任何零件的工程号。 ∏JNO( CITY <> “天津”∧COLOR<>“红” (S ∞ SPJ ∞P) J1既使用了天津供应商生产的红色零件,也使用了其他零件。
第5(5)题 • 求至少用了供应商S1所供应的全部零件的工程号JNO • 考察:除关系 • 关系代数: ∏JNO((SPJ) ÷ ∏sno,pno( SNO=‘S1’(SPJ)) • ALPHA RANGE SPJ SPJX SPJ SPJY P PX GET W(J.JNO): PX( SPJX(SPJX.PNO = PX.PNO^SPJX.SNO = ‘S1’) SPJY(SPJY.JNO = J.JNO ^ SPJY.PNO = PX.PNO)) 除操作在写关系演算表达式的关键:包含一个蕴含关系。
∏JNO,PNO((SPJ) ÷(∏pno(SNO=‘S1’(SPJ))) • 问题在于不该预先做一次pno的投影。 • 假定S1生产的零件p1,p2,p3,那么投影得到p1,p2,p3,而某个工程J1,使用了s1提供的p1,p2, 而使用了s2提供的p3,那么J1也将会在除法之后被选出,但实际它是不符合条件的
第6题 • 等值连接:两个表选取两个属性列,它们的类型相同,列名可以不同,就可以做等值连接。 • 自然连接:两个表中必须包含相同属性(属性名,属性类型),那么在这个属性上就可以做自然连接。并在连接结果中只能保留一个列。
作业之星 • 华雯 • 刘爽 • 龚婉露