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

【牛客】SQL146 0级用户高难度试卷的平均用时和平均得分

描述

现有用户信息表user_info(uid用户ID,nick_name昵称, achievement成就值, level等级, job职业方向, register_time注册时间),数据如下:

iduidnick_nameachievementleveljobregister_time
11001牛客1号100算法2020-01-01 10:00:00
21002牛客2号21006算法2020-01-01 10:00:00

试卷信息表examination_info(exam_id试卷ID, tag试卷类别, difficulty试卷难度, duration考试时长, release_time发布时间),数据如下:

idexam_idtagdifficultydurationrelease_time
19001SQLhard602020-01-01 10:00:00
29002SQLeasy602020-01-01 10:00:00
39004算法medium802020-01-01 10:00:00

试卷作答记录表exam_record(uid用户ID, exam_id试卷ID, start_time开始作答时间, submit_time交卷时间, score得分),数据如下:

iduidexam_idstart_timesubmit_timescore
1100190012020-01-02 09:01:012020-01-02 09:21:5980
2100190012021-05-02 10:01:01(NULL)(NULL)
3100190022021-02-02 19:01:012021-02-02 19:30:0187
4100190012021-06-02 19:01:012021-06-02 19:32:0020
5100190022021-09-05 19:01:012021-09-05 19:40:0189
6100190022021-09-01 12:01:01(NULL)(NULL)
7100290022021-05-05 18:01:012021-05-05 18:59:0290

请输出每个0级用户所有的高难度试卷考试平均用时和平均得分,未完成的默认试卷最大考试时长和0分处理。由示例数据结果输出如下:

uidavg_scoreavg_time_took
10013336.7

解释:0级用户有1001,高难度试卷有9001,1001作答9001的记录有3条,分别用时20分钟、未完成(试卷时长60分钟)、30分钟(未满31分钟),分别得分为80分、未完成(0分处理)、20分。因此他的平均用时为110/3=36.7(保留一位小数),平均得分为33分(取整)

select
uid,
round(avg(ifnull(score,0)),0) as avg_score,
round(avg(ifnull(timestampdiff(minute,start_time,submit_time),duration)),1) as time_took
from
exam_record left join examination_info using(exam_id)
where
uid in (select uid from user_info where level=0) and difficulty='hard'
group by uid

相关文章:

  • HashMap---数据结构
  • 开发npm上传发布
  • 华为OD技术面算法题整理
  • 家庭网络防御系统搭建-生产要素准备
  • 前端基础 Vue -组件化基础
  • 开始喜欢上了runnergo,JMeter out了?
  • 【物联网】Qinghub Kafka 数据采集
  • mysql 存储过程示例
  • 谈一谈BEV和Transformer在自动驾驶中的应用
  • FPGA电平标准
  • Mac电脑虚拟显示器:BetterDisplay Pro for Mac v2.0.11激活版
  • java Web餐馆订单管理系统用eclipse定制开发mysql数据库BS模式java编程jdbc
  • Vscode与Cmake搭配配置opencv使用
  • 使用Spring Boot Admin监控和管理Spring Boot应用程序
  • SpringBoot集成Solr全文检索
  • JavaScript 如何正确处理 Unicode 编码问题!
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • canvas 五子棋游戏
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • extjs4学习之配置
  • Invalidate和postInvalidate的区别
  • nodejs调试方法
  • Objective-C 中关联引用的概念
  • Python socket服务器端、客户端传送信息
  • scala基础语法(二)
  • socket.io+express实现聊天室的思考(三)
  • Unix命令
  • Vue2 SSR 的优化之旅
  • VuePress 静态网站生成
  • 成为一名优秀的Developer的书单
  • 浮现式设计
  • 爬虫模拟登陆 SegmentFault
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 一道闭包题引发的思考
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • ​卜东波研究员:高观点下的少儿计算思维
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #前后端分离# 头条发布系统
  • (MATLAB)第五章-矩阵运算
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (待修改)PyG安装步骤
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (十三)Maven插件解析运行机制
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (四) 虚拟摄像头vivi体验
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • *上位机的定义
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法
  • [ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600