select S#, Sname from Student where S# in (select distinct S# from SC where C# not in (select C# from SC Where S# = '1'))
还是不行啊
很郁闷
@千山慕雪:
SELECT stu.Sid, stu.Sname FROM Student stu INNER JOIN SC score2
ON (stu.Sid = score2.Sid) WHERE score2.Cid IN (
SELECT Cid FROM SC score WHERE score.Sid = '1' )
GROUP BY stu.Sid, stu.Sname
HAVING COUNT(score2.Cid) = (
SELECT COUNT(1) FROM SC score WHERE score.Sid = '1' ) AND stu.Sid <> '1'
@纳_尼: 厉害了老兄!这个是可以的
@纳_尼: 查询和“1”号的同学学习的课程完全相同的其他同学学号和姓名
这个需求能解决吗?
@千山慕雪:关于数据库查询的练习,你可以看看这https://wenku.baidu.com/view/95bf164e19e8b8f67c1cb9da.html
@纳_尼: 可以的
如果只要知道学过课程1的学生的学生和姓名,只要成绩表和学生表关联一下不就行了吗?
不行的
查询至少有一门课与学号为“1”同学所学相同的同学的学号和姓名(这个我会)
select distinct(STUDENT.S#),sNAME FROM STUDENT,sc where C# not in (select C# from sc where s#='1') and STUDENT.S#!='1'