select difficult_level, sum(result='right')/count(*) as correct_rate from (select user_profile.device_id, question_id, result, university from user_profile inner join question_practice_detail on user_profile.device_id=question_practice_detail.device_id where university = '浙江大学') a inner join question_detail on a.question_id = question_detail.question_id group by difficult_level order by correct_rate;