select p.university, d.difficult_level, count(q.question_id) / count(distinct q.device_id) as "avg_answer_cnt"
from user_profile p
         left join question_practice_detail q on p.device_id = q.device_id
         left join question_detail d on q.question_id = d.question_id
group by p.university, d.difficult_level
having difficult_level is not null;