题解 | #统计作答次数#

统计作答次数

https://www.nowcoder.com/practice/45a87639110841b6950ef6a12d20175f

SELECT COUNT(CASE WHEN start_time IS NOT NULL THEN 1 ELSE NULL END) total_pv, 
    COUNT(CASE WHEN submit_time IS NOT NULL THEN 1 ELSE NULL END) total_pv, 
    COUNT(DISTINCT CASE WHEN SCORE IS NULL THEN NULL ELSE exam_id END) complete_exam_cnt
FROM exam_record

题解:

任务:作答的次数,作答完成的次数,作答完成的卷子数

思路:

作答的次数是根据开始时间来计算的,可以统计开始时间的列数,或者全部记录的列数,这里我弄复杂了,COUNT函数会自动忽略NULL的

作答完成的次数可以根据提交时间或者得分来统计

作答完成的卷子数要难点,要根据提交时间或者得分是否为null的情况来决定,如果是null,那就没有完成。否则就完成了,就来统计卷子数,记得要去重

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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