题解 | 考试分数(四)
考试分数(四)
https://www.nowcoder.com/practice/502fb6e2b1ad4e56aa2e0dd90c6edf3c
select job ,case when count(score)%2=0 then ceiling(count(score)/2) else ceiling(count(score)/2) end as start ,case when count(score)%2=0 then ceiling(count(score)/2+1) else ceiling(count(score)/2) end as end from grade group by job order by job; -- 当个数为偶数时,中位数的起始位置等于个数/2,结束位置等于个数/2+1 -- 当个数为奇数时,中位数的起始位置等于向上取整(个数/2),结束位置等于向 -- 上取整(个数/2)