SELECT Cname
FROM Student, Course, SC
WHERE Student.Sno=SC.Sno AND
SC.Cno=Course.Cno AND
SC.Cno=Course.Cno AND
此查询要求信息系学生选修了的所有课程名称。
试画出用关系代数标识的语法树,并用关系代数表达式优化算法对原始的语法树进行优化处理,画出优化后的标准语法树。
解:
其关系代数表达式为:
〖〖〖π_Cname (σ〗_(sdept=^' IS^' ) (σ〗_(Student.Sno=SC.Sno) ( σ〗_(Course.Cno=SC.Cno) (Student)×SC)×Course))
用关系代数表达式优化算法对原关系代数表达式进行优化,优化后的关系代数表达式如下:
〖〖π_Cname (σ〗_(Course.Cno=SC.Cno) ((σ〗_(Student.Sno=SC.Sno) (π_sno (σ_(sdept=^' IS^' ) (Student)×π_(Sno,Cno) (SC)))×π_(Cno,Cname) (Course)
用关系代数表示的语法树如左图所示,优化处理后的标准语法树如右图所示。