oracle 数据库查询,该怎么解决
请教大家一个问题,假如有一个成绩表Score,首先要根据成绩Result大于60分的,找到学生StudentID,再根据找到的学生ID,去师生表Teach里面,找到该学生的班主任ID(假设一个学生只有一个老师)ManagerID,假设班主任同时也是一名学生,要查找班主任的成绩。
请问这样的问题,应该怎么写查询语句呢?
------解决方案--------------------
- SQL code
select Score.StudentID, Score.Result from (select StudentID from Score where Result > 60) StuAbove60, Teach, Score where StuAbove60.StudentID = Teach.StudentID and Score.StudentID = Teach.ManagerID;
------解决方案--------------------
成绩Result大于60分的应该不止一个吧 然后对应的也不止一个班主任咯?
- SQL code
select StudentID,Result from Score where StudentID in (select ManagerID from Teach t1 where t1.StudentID in (select StudentID from Score where Result<60) )