题解 | #浙大不同难度题目的正确率#

浙大不同难度题目的正确率

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

select distinct
    difficult_level,
    sum(if (b.result = 'right', 1, 0)) / count(b.question_id) as correct_rate
from
    user_profile a
    left join question_practice_detail b on a.device_id = b.device_id
    left join question_detail c on b.question_id = c.question_id
where
    university = '浙江大学'
    and b.question_id is not null
group by
    c.difficult_level
order by
    correct_rate

联表查询筛选出浙江大学,特别注意的是连第三张表的时候需要排除题目id为空的情况,否则由于左联,最终的视图会带上一些question_id为空的记录导致统计出错,联表查询后按照难度分组,最后用正确的题目数除总的题目数即可得出正确率。

全部评论

相关推荐

12-25 16:26
已编辑
河北科技学院 Java
勇敢的牛油不服输:2800-300那不等于2500一个月吗兄弟们
点赞 评论 收藏
分享
评论
2
1
分享

创作者周榜

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