题解 | #每类试卷得分前3名#
每类试卷得分前3名
https://www.nowcoder.com/practice/255aa1863fe14aa88694c09ebbc1dbca
with data_for_use as ( select exam_id, tag, uid, score from exam_record left join examination_info using (exam_id) where score is not null ), tag_uid_score as ( select tag, uid, max(score) mxs, min(score) mis from data_for_use group by tag, uid ) select tag as tid, uid, ranking from ( select tag, uid, row_number()over(partition by tag order by mxs desc, mis desc, uid desc) as ranking from tag_uid_score ) a where ranking <= 3