题解 | #统计复旦用户8月练题情况#
统计复旦用户8月练题情况
https://www.nowcoder.com/practice/53235096538a456b9220fce120c062b3
select a.device_id, a.university, sum( case when b.device_id is not null then 1 else 0 end ) as question_cnt, sum( case when b.result = "right" then 1 else 0 end ) as right_question_cnt from user_profile a left join question_practice_detail b on a.device_id = b.device_id and month (b.date) = 8 and a.university = "复旦大学" group by a.device_id, a.university having a.university = "复旦大学"
第一次过滤的目的主要是为了减少数据量