注意:rank()过不了,要用row_number()。 因为rank()表示排名数,会出现并列情况,如两个人并列第二的情况,算第二快/慢用时之差time_diff时,会把并列第二的两个人都算进去。 sum(case when rank_slow=2 then t when rank_fast=2 then -t else 0 end ) as time_diff全部代码: select exam_id,duration,release_time from ( select a.exam_id,a.release_time,sum(case when rank_slow=2 then t wh...