【发布时间】:2020-07-20 07:23:03
【问题描述】:
我正在尝试编写一个 sql,让我可以选择每个学生在每个科目中的第三个最佳作业分数。我已尝试使用下面的查询,但它对我不起作用。我会很感激能得到一些答案。我收到一个错误[Code: 0, SQL State: 21000] ERROR: more than one row returned by a subquery used as an expression。
这是表结构 Students , Courses(Id) ,名为 StudentsCourses(ID, StudentID,CourseID) 的桥接表,然后是包含 StudentsCourse(FK) 和 Grade 的作业表
select max(Assignments.Grade)
from Assignments
where grade < (select max(Assignments.Grade)
from Assignments
where grade < (select max(Assignments.Grade)
from Assignments
group by Assignments.StudentCourseID))
【问题讨论】:
标签: sql postgresql greatest-n-per-group