SQL查询,学生表,课程表,成绩表的一个查询要求如下怎么写呢?

select sid sname from student where sid
in
(select sid from sc where cid
=
(select cid from course where cname='影视设计'));
//查询所有选择了影视设计课程的学生的信息

student表 sid sname
course表 cid cname
sc表 sid cid score

现在我想查询:所有选择了影视设计课程的学生的信息 以及 他们这门课的成绩

因为原先是 sid sname两个结果集字段,现在想再看到score这个字段。
变成 sid sname score三个字段 //表示选了影视设计课程的学生的信息以及该门课成绩
如何写SQL?
可否直接在我上面写好的SQL语句继续补充完善一下呢?

select s.sid,s.sname,sc.score from student,course,sc where student.sid=sc.sid and course.cid=sc.cid and course.cname='影视设计';

注意一下,你自己写的sid和sname中间没有逗号,到时候一定执行报错

追问

那可以在我的那个嵌套查询上修改嘛…虽然你的这个我学会了。

追答

嵌套的话,也得先嵌套后关联

select a.*,b.score from student a,(select sid,score from sc where cid=(select cid from course where cname='影视设计') b where a.sid=b.sid追问

谢谢🙏

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网