mysql中位数计算方式
1、建表
drop table test_cunchu.score; create table test_cunchu.score( id int not null primary key auto_increment, score decimal(10,2) not null );
2、插入数据
insert into test_cunchu.score (score) values (89.4); insert into test_cunchu.score (score) values (82.5); insert into test_cunchu.score (score) values (65); insert into test_cunchu.score (score) values (98); insert into test_cunchu.score (score) values (92); insert into test_cunchu.score (score) values (34); insert into test_cunchu.score (score) values (59); insert into test_cunchu.score (score) values (83); insert into test_cunchu.score (score) values (88); insert into test_cunchu.score (score) values (63); insert into test_cunchu.score (score) values (100); insert into test_cunchu.score (score) values (96); insert into test_cunchu.score (score) values (68); insert into test_cunchu.score (score) values (56);
3、中位数查询
select round(sum(score) / count(*),2) as midean from ( select score, row_number() over (order by score desc) as desc_Math, row_number() over (order by score asc) as asc_Math from test_cunchu.score ) as order_table where asc_Math in (desc_Math, desc_Math + 1, desc_Math - 1);
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/279132.html