题解 | #统计复旦用户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;

全部评论

相关推荐

机械打工仔:我来告诉你原因,是因为sobb有在线简历,有些HR为了快会直接先看在线简历,初步感觉不合适就不会找你要详细的了
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务