<分区>
我有这样的查询来选择学生正在学习的类(class):
SELECT course_student.course from course_student inner join
(select student.student_id from student inner join reg_user
on student.reg_user = reg_user.reg_user_id
WHERE reg_user_id=5) as tmp
on tmp.student_id = course_student.student into @vcourse;
但是,由于 reg_user_id=5 将返回 2 行,因为该学生选修了 2 门类(class),下面的查询返回与用户 5 在同一类(class)中的所有学生,返回错误“结果超过一行”。
select family_name, middle_name, given_name FROM reg_user
inner join (select reg_user from lecturer inner join course_lecturer
on lecturer = lecturer_id
where course = @vcourse) as temp on temp.reg_user = reg_user_id;
我知道这个问题是由于使用 SELECT...INTO 查询引起的,但我不知道如何解决它。如果有人知道如何将多个结果放入 WHERE 条件中,我将不胜感激。谢谢 Ps:这是数据库结构,以便您可以按照我的查询
我想从第一个查询中获取所有结果并在第二个查询中使用这些结果。 第一个将选择 student_id=5 的所有 course_id。 第二个将选择与id=5的学生在同一类(class)的所有注册用户的名称。