select job,(max(seq)+min(seq))/2 as start,printf("%d",round((max(seq)+min(seq))*1.0/2)) as end from (select id,job,score,count() over(partition by job order by score asc) as seq from grade) as t group by job;先用窗口函数count给每个job生成一个升序的序号,然后计算中间的序号,这里分数升序,降序也可以 3|C++ |9000|12|C++ |10000|21|C++ |1100...