/*创建辅助列:正序、倒序,取值均大于总数的1/2,即为中位数 */ select grade from (select grade, sum(number) over(order by grade) a, sum(number) over(order by grade desc) b, (select sum(number) from class_grade) total from class_grade) t where a>=total/2 and b>=total/2 order by grade