with l1 as ( select exam_id, tag, difficulty from examination_info where tag = 'SQL' and difficulty = 'hard' group by exam_id, tag, difficulty ), l2 as ( select * from exam_record where submit_time is not null ) select tag, difficulty, round(avg(score) ,1)as clip_avg_score from ( select tag, difficulty, score, row_number() over ( partition by tag order by score desc ) as rank_1, row_number() over ( partition by tag order by score asc ) as rank_2 from l1 join l2 on l1.exam_id = l2.exam_id ) a where rank_1 > 1 and rank_2 > 1 group by tag, difficulty