题解 | #统计复旦用户8月练题情况#

统计复旦用户8月练题情况

https://www.nowcoder.com/practice/53235096538a456b9220fce120c062b3




#解法一
 select b.device_id,university,
    count(question_id) as question_cnt,
    count(case when result='right' then 1 else null end) as right_question_cnt 
from (select device_id,university
    from user_profile 
    where university = "复旦大学") as a
left join  (
    select device_id,question_id,result
    from question_practice_detail 
    where month(date)="08")as b
on a.device_id=b.device_id 
group by b.device_id;

#解法二
select b.device_id,university,
    sum(if(question_id is null,0,1)) question_cnt,
    sum(if(result="wrong",0,1)) right_question_cnt 
from (
    select device_id,university from user_profile
    where university="复旦大学") a
left join (
    select device_id,question_id,result from question_practice_detail
    where month(date)='08') b
on a.device_id=b.device_id
group by  b.device_id;

全部评论

相关推荐

11-20 17:33
已编辑
门头沟学院 嵌入式工程师
小米汽车 底软测开岗 n*15(15大概率拿不到) 双非硕
点赞 评论 收藏
分享
牛客963010790号:为什么还要收藏
点赞 评论 收藏
分享
喜欢走神的孤勇者练习时长两年半:池是池,发是发,我曾池,我现黑
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务