问题 问答题

现有“学生-选课-课程”关系数据库如下: 学生表S(Sno,Sname,Sage,Ssex,Sdept),各属性含义依次为学号,姓名,年龄,性别,所在系; 选课表SC(Sno,Cno,Grade),各属性含义依次为学号,课程号,成绩; 课程表C(Cno,Cname,Cteacher),各属性含义依次为课程号,课程名,授课教师 ; 试用SQL语言完成以下操作:

检索选修了“王杰”老师所授课程的学生的学号和姓名;

答案

参考答案:

方法A:

SELECT Sno,Sname         

FROM S,SC,C                

WHERE S.Sno=SC.Sno       

AND SC.Cno=C.Cno           

AND C.Cteacher=‘王杰’   

方法B:

SELECT Sno,Sname                

FROM S                       

WHERE Sno IN                   

  (SELECT Sno

FROM SC                     

WHERE Cno IN                    

(SELECT Cno

FROM C                       

WHERE Cteacher =‘王杰’))     

填空题
问答题