题解 | #统计复旦用户8月练题情况#
统计复旦用户8月练题情况
https://www.nowcoder.com/practice/53235096538a456b9220fce120c062b3
select u.device_id , u.university, count(q.question_id ) as quesiton_cnt, sum(if(q.result='right',1,0)) as right_question_cnt from user_profile u join question_practice_detail q on u.device_id =q.device_id and month(q.date)='8' where university = '复旦大学' group by u.device_id 出错的原因在于第四行这里我用的count(result='right')来计算,还是想的太简单了,这个sql它还是没那么厉害,其实这个就相当于是若结果为对,则计数,若错,则不计数,要使用sum来计算