SELECT a.exam_id,timestampdiff(minute,a.start_time,a.submit_time) time_diff ,b.duration,b.release_time, ROW_NUMBER()OVER(PARTITION BY a.exam_id ORDER BY timestampdiff(minute,a.start_time,a.submit_time) DESC ) rk_desc, ROW_NUMBER()OVER(PARTITION BY a.exam_id ORDER BY timestampdiff(minute,a.start_time,a.submit_time) ASC ) rk_asc FROM exam_record a LEFT JOIN examination_info b ON a.exam_id=b.exam_id WHERE a.submit_time IS NOT NULL; /* 该子查询命名为t1*/ 在最内层子查询使用窗口函数后,排序没有用group by,最后得到的排序结果我可以理解。但接着其外层用了Group by,请问这用了group by后是咋排序呢?是exam_id为9001的1234、id为9002的1234这样排下来,还是咋样?不是很理解为什么要用group by
点赞

相关推荐

12-27 22:35
门头沟学院 Java
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务