我有以下表格
- 学生(sid,姓名,年龄)
- 课程(cid,cname,持续时间)
- 注册(sid,cid,日期)
查找所有参加过 sid = 1 的课程的 sid。
select sid from enroll where cid in (select cid from enroll where sid=1)
group by sid having count(*)=(select count(*) from enroll where sid=1)
minus (select sid from student where sid=1);
- 第一个 count(*) 指的是什么?
- 是否有更简单的查询版本?