当前位置: 首页 > ops >正文

SQL29 验证刷题效果,输出题目真实通过率

SQL29 验证刷题效果,输出题目真实通过率

selectuser_id,count(distinct if (result_info = 1, question_id, null)) / count(distinct question_id) as question_pass_rate,sum(result_info) / count(result_info) as pass_rate,count(question_id) / count(distinct question_id) as question_per_cnt
fromdone_questions_record
group byuser_id
havingquestion_pass_rate > 0.60

SQL查询解析

这个SQL查询基于用户的刷题记录计算了三个关键指标,并筛选出题目通过率高于60%的用户。

计算的指标

  1. 题目通过率(question_pass_rate)

    • 定义:用户至少通过一次的题目占其尝试过的所有题目的比例
    • 计算方式:COUNT(DISTINCT IF(result_info = 1, question_id, NULL)) / COUNT(DISTINCT question_id)
    • 示例:用户101尝试了3道不同的题目(1,2,5),且都至少通过了一次 → 3/3 = 1.0000
  2. 提交正确率(pass_rate)

    • 定义:用户所有提交记录通过的比例
    • 计算方式:SUM(result_info) / COUNT(result_info)
    • 示例:用户101共提交4次,其中3次通过 → 3/4 = 0.7500
  3. 每题目平均提交次数(question_per_cnt)

    • 定义:用户平均每道题目提交了多少次
    • 计算方式:COUNT(question_id) / COUNT(DISTINCT question_id)
    • 示例:用户101尝试3道题共提交4次 → 4/3 ≈ 1.3333

筛选条件

查询最后使用HAVING子句筛选出题目通过率大于60%的用户,即question_pass_rate > 0.60

输出结果说明

查询返回的结果包含4列:

  1. user_id - 用户ID
  2. question_pass_rate - 题目通过率(格式化为4位小数)
  3. pass_rate - 提交正确率(格式化为4位小数)
  4. question_per_cnt - 每题目平均提交次数(格式化为4位小数)

示例数据验证

以用户102为例:

  • 尝试题目:1,2,5(共3道)
  • 提交记录:每题各提交1次且全部通过
  • 计算结果:
    • 题目通过率:3/3 = 1.0000
    • 提交正确率:3/3 = 1.0000
    • 每题目平均提交次数:3/3 = 1.0000
http://www.xdnf.cn/news/13425.html

相关文章:

  • Spring声明式事务生效是有条件滴!
  • 达梦数据库单机部署dmhs同步复制(dm8->kafka)
  • MFC 第1章:适配 WIndows 编程的软件界面调整
  • 如何诊断服务器硬盘故障?出现硬盘故障如何处理比较好?
  • 【沉浸式解决问题】Idea运行Junit测试中scanner无法获取控制台的输入内容
  • 山东大学软件学院项目实训-基于大模型的模拟面试系统-面试对话标题自动总结
  • 看安科瑞分布式光伏解决方案如何破解光伏痛点?
  • Python实战案例详解:基于计算器项目的扩展应用
  • 前端框架vue3的变化之处
  • API:解锁数字化协作的钥匙及开放实现路径深度剖析
  • HakcMyVM-Blackhat
  • Ubuntu 24.04 上安装与 Docker 部署 Sentinel
  • UE5 学习系列(六)导入资产包
  • BW非法字符处理
  • 智能空气流向控制系统SKLX的优化与实践
  • Hi3519DV500开发板适配新sensor的详细流程(最新版)
  • 96页PPT华为销售战略规划市场洞察品牌策略
  • Squid 代理服务器实战:解决动态 IP 访问第三方接口的生产级方案
  • 多系统合路器(POI)详解
  • 【数据结构】 优先级队列 —— 堆
  • 波形合成之C语言实现
  • NuGet 从入门到精进全解析
  • Intel Boot Guard
  • 系统集成自动化流程编排实现条件分支高级篇(二)
  • 实战使用docker compose 搭建 Redis 主从复制集群
  • 依存句法分析
  • Cockpit:一个开源的 Linux 系统管理工具
  • 蚁群算法(Ant Colony Optimization)原理与应用解析
  • (功能测试Charles)如何抓取手机http的报文
  • 2025神经网络动力学理论、优化算法及应用专题研讨会 ( NOTAA 2025)