问题:请输出每个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