1.left join      左边的表全部保留,可以留下八月份没有做题的学生
2.sum(if(result = 'right',1,0))      答题正确,进行累加计数
3.group by u.device_id      根据学生id分组
select 
    u.device_id,
    university,
    count(question_id) as question_cnt,
    sum(if(result='right',1,0)) as right_question_cnt
from user_profile u left join question_practice_detail q on u.device_id = q.device_id and date like '%-08-%'
where university = '复旦大学'
group by u.device_id