请教多表查询的问题,谢谢!!
学生表Student               包含以下几个字段 
 (Sno      ,   Sname      ,   Ssex      ,   Sage      ,   Sdept) 
       学号         姓名               性别            年龄               所在系   
 课程表Course 
 (Cno         ,   Cname         ,   Cpno            ,      Ccredit      ) 
 课程号         课程名         选修课号            学分   
 学生选课表Sc 
 (Sno      ,      Cno         ,      Grade   ) 
       学号            课程号         成绩   
 要求查询选修了全部课程的学生姓名
------解决方案--------------------select sname from student 
 where sno in ( 
         select sno from sc 
         group by sno 
         having count(*) = 
          ( select count(*) from course) 
 )
------解决方案--------------------楼上的朋友用了嵌套,用一个jion吧,看起来比较繁琐了,呵呵   
 select a.* from Student as a 
 join ( 
 	select distinct Sno from Sc 
 	group by Sno 
 	having count(distinct Cno) = ( 
 		select count(*) from Course 
 	) 
 ) as b on a.Sno = b.Sno