题目
设有一个数据库中有三个关系:
学生关系 S(S#,SNAME,AGE,SEX)
课程关系 C(C#,CNAME,TEACHER)
学习关系 SC(S#,C#,GRADE)
下面用关系代数表达式表达各个查询语句:
-
检索年龄大于 20 岁的男学生的学号、姓名。
Π S#,SNAME(σ AGE>20,SEX=‘男’(S)) -
检索学习课程号为C2 的学生学号与成绩。
Π S#,GRADE(σ C#=‘C2’(SC)) -
检索学习课程号为C2 的学生学号与姓名。
Π S#,SNAME(σ C#=‘C2’(SC∞S)) -
检索选修课程名为MATHS 的学生学号与姓名。
Π S#,SNAME(σ CNAME(‘MATHS’(C∞SC∞S) -
检索王华老师所授课程的课程号、课程名
Π C#,CNAME(σ TEACHER='王华’©) -
检索选修课程号为C2 或C4 的学生学号。
Π S#(σ C#='C2’∪C#=‘C4’(SC)) -
检索至少选修课程号为 C2 和C4 的学生学号。
-
检索至少选修两门课程的学生学号。
Π SNAME,AGE(S)-Π SNAME,AGE(σ C#=‘C2’(SC∞S)) -
检索不学C2 课的学生姓名与年龄。
-
检索全部学生都选修的课程的课程号、课程名。
-
检索学习全部课程的学生姓名。
Π SNAME(S∞(Π S#,C#(SC)÷Π C#©)
思路: