你那个写法已经很好了,还有另外一种写法
SELECT *
FROM STUDENT
where sno in (SELECT SC.Sno
FROM SC, Course c
WHERE c.Cno = SC.Cno AND c.Cname IN ('现代数据库技术' , '网络操作系统' )
group by SC.Sno
HAVING COUNT(c.Cno) > 1)
select * from STUDENT
where sno in (
SELECT s.Sno
FROM Course c, SC, STUDENT s
WHERE c.Cno=SC.Cno AND c.Cname='现代数据库技术' )
and sno in
(SELECT s.Sno
FROM Course c, SC, STUDENT s
WHERE c.Cno=SC.Cno AND c.Cname='网络操作系统' )