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

select
    difficult_level,
    sum(
        case
            when result = 'right' then 1
            else 0
        end
    ) / count(result) correct_rate
from
    question_practice_detail qpd
    left join user_profile u on qpd.device_id = u.device_id
    left join question_detail qd on qpd.question_id = qd.question_id
where
    university = '浙江大学'
group by
    difficult_level
order by
    correct_rate

  • 通过 LEFT JOIN 连接三张表:question_practice_detail(练习详情表)、user_profile(用户信息表)和 question_detail(题目详情表)。
  • 使用 WHERE 子句筛选出 university 为 ' 浙江大学 ' 的记录。
  • difficult_level 进行分组。
  • 在每个分组内,使用 CASE WHEN 语句统计回答正确的题目数量,然后除以总答题数量,得到正确率。
  • 最后按正确率对结果进行排序。
  • 全部评论

    相关推荐

    今天投了小鹏,收到了AI面,大概会问哪些啊?
    期末一定及格:总共4个部分,心理测评、行测、然后就是问岗位、对岗位的理解、过往遇到了哪些难点怎么解决,很简单,没有什么特别专业的问题,都是一些综合素质相关的
    点赞 评论 收藏
    分享
    点赞 评论 收藏
    分享
    评论
    点赞
    收藏
    分享

    创作者周榜

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