给定学生表,字段包括id、name、yuwengrade、mathgrade、englishgrade、allgrade(总成绩)。请查出总成绩排名第三的所有学生id,需要考虑并列情况。若表中没有allgrade字段,应如何写出查询?请分别给出SQL。
考察说明
考察SQL窗口函数与去重排名逻辑,以及基于多字段计算总成绩的改写能力
回答思路
- 能正确使用窗口函数如DENSE_RANK或ROW_NUMBER处理并列排名
- 能说明DENSE_RANK与RANK的区别并给出与并列需求匹配的选择
- 能在无allgrade时用三个成绩字段求和作为排名字段
- 结果能返回所有并列第三名的学生id
- SQL语法正确且逻辑清晰
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。