select i.emp_id,emp_level,tag exam_tag from emp_info i join (select distinct emp_id,r.exam_id,tag from exam_record r join (select r.exam_id,tag,avg(timestampdiff(second,start_time,submit_time)) avg_time, avg(score) avg_sc from exam_record r join examination_info e using(exam_id) group by r.exam_id,tag) m using(exam_id) where score>avg_sc and timestampdiff(second,start_time,submit_time) <avg_time) f using(emp_id) where emp_level<7 order by i.emp_id,exam_id; 即使子查询中已经重命名一个表格了,但外层还是不能直接用重命名。 这题还要注意一些列名的变化和两表的联结词需要指定表格。

京公网安备 11010502036488号