题解 | #0级用户高难度试卷的平均用时和平均得分#
0级用户高难度试卷的平均用时和平均得分
http://www.nowcoder.com/practice/bb474c6cbd77478fb6d9fc86934d0ebb
问题:请输出每个0级用户所有的高难度试卷考试平均用时和平均得分,未完成的默认试卷最大考试时长和0分处理。由示例数据结果输出如下
完全没啥关键点,直接根据uid分组求平均数即可。
SELECT er.uid,
ROUND( AVG( ifnull(score,0) ) ) avg_score,
ROUND(
AVG(
IF(submit_time IS NULL,duration,
TIMESTAMPDIFF(minute,start_time,submit_time))
)
,1) avg_time_took
FROM exam_record er
JOIN examination_info ei ON er.exam_id=ei.exam_id
JOIN user_info ui ON er.uid=ui.uid
WHERE level=0 AND difficulty='hard'
GROUP BY er.uid