关于嵌套SQL语句写法的问题!(50分)

  • 主题发起人 主题发起人 JFGao
  • 开始时间 开始时间
J

JFGao

Unregistered / Unconfirmed
GUEST, unregistred user!
如果我有学生表(student):
id student_name
1 Jim
2 Lily

课程表(course):
id course
1 Computer
2 Medicine

选课表(select_rs):
id student_id course_id
1 1 1
2 1 2

以上表明一个编号为1的学生选择了Computer和Medicine两门课。

现在,我要通过学生编号查询查询学生的选课情况,写了如下的SQL语句:
SELECT course FROM course WHERE ID = (select course_id FROM select_rs WHERE student_id=1)

即显示出Computer和Medicine两门课的名称,可是出现了问题,我知道这样写SQL语句是不对的,因为where后面的id(course表)从Select_rs中选取的值并不唯一,可是我就是想要选择多个条目,怎么办呢?

请不要告诉我应该这样写:
SELECT course FROM course WHERE ID = 1 or ID = 2

因为选课表(select_rs)是不断变化的!

谢谢给我答案!
 
SELECT course FROM course WHERE ID [red]in[/red] (select course_id FROM select_rs WHERE student_id=1)

 
用集合,楼上说得不错!
 
SELECT course FROM course WHERE ID IN(select course_id FROM select_rs WHERE student_id=1)

 
此问题本人自行已经解决,嘿嘿,刚想上来结束,没想到这么快就有人贴出了答案,
分数嘛照给咯!因为zh_sh是先贴的而且答案一样,所以多给你加十分!
谢谢大家吖!
 
后退
顶部