应该是子表最少的查询代码,使用三个窗口函数锁定中位数关键思路见链接 select grade from (select grade,sum(NUMBER) over(order by grade) AS t_rank, sum(NUMBER) over(order by grade DESC) AS t_rank2, sum(number) over() as tot FROM class_grade) t1 where t_rank >=tot/2 and t_rank2 >= tot/2 ORDER by grade