题解 | #各用户等级的不同得分表现占比#
各用户等级的不同得分表现占比
https://www.nowcoder.com/practice/ebff819fd38c46db8a42dfe43ca7b33a
with data_f_use as ( select uid, exam_id, score, level , (case when score >= 90 then '优' when score >= 75 then '良' when score >= 60 then '中' else '差' end) score_grade from exam_record left join user_info using (uid) where submit_time is not null ), subtotal_level as ( select level, count(uid) subtotal_l from data_f_use group by level ) select level, score_grade , round(count(1) / max(subtotal_l), 3) as ratio from data_f_use left join subtotal_level using (level) group by level, score_grade order by level desc, ratio desc