题解 | 根据指定记录是否存在输出不同情况

根据指定记录是否存在输出不同情况

https://www.nowcoder.com/practice/f72d3fc27dc14f3aae76ee9823ccca6b

select ui.uid,count(if(submit_time is null and start_time is not null,1,null)) as incomplete_cnt,
round(ifnull(count(if(submit_time is null,1,null))/count(exam_id),0.000),3) as incomplete_rate 
from user_info ui
left join exam_record er on ui.uid=er.uid
where (
    case when (select max(cnt)
    from(select count(if(submit_time is null,1,null)) as cnt
        from user_info ui
        left join exam_record er on ui.uid=er.uid
        where level =0
        group by ui.uid)b)>2 then level =0
        else start_time is not null end
)
group by ui.uid
order by incomplete_rate

二刷

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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