select qd.difficult_level,
    round(AVG(if(q.result = 'right',1,0)),4) as correct_rate
from 
    user_profile u join question_practice_detail q
    on u.device_id = q.device_id 
    join question_detail qd 
    on q.question_id = qd.question_id
where u.university = '浙江大学'
group by
    qd.difficult_level
order by
    correct_rate
ASC;

这里使用left join左连接会多出现一排为None的结果。