mysql里获取中位数和四分位数的函数是什么?
2个回答
没有特别简单的方法,假设表的名字叫grades,你想得到grades中其中一列grade的中位数,代码如下
SET @rowindex := -1;
SELECT
AVG(g.grade)
FROM
(SELECT @rowindex:=@rowindex + 1 AS rowindex,
grades.grade AS grade
FROM grades
ORDER BY grades.grade) AS g
WHERE
g.rowindex IN (FLOOR(@rowindex / 2) , CEIL(@rowindex / 2));
SofaSofa数据科学社区DS面试题库 DS面经
四分位数的话就把@rowindex/2换成@rowindex/4就可以了
-
何立诚
2019-09-26 11:10
可以试试substring_index和group_concat这两个函数
SofaSofa数据科学社区DS面试题库 DS面经
substring_index和group_concat应该都是处理string,和中位数没关系吧
-
cece
2019-09-23 01:55
相关主题
NoSql数据库是什么样的?
1回答
sql怎么对数据表里的一列中文字符串按照拼音顺序排序?
1回答
hive里的LEFT SEMI JOIN是什么JOIN?
1回答
sql里nullif怎么用?
1回答
mysql里的锁是什么意思?
1回答
增量表、全量表分别是什么意思
1回答
我们谢绝在回答前讲“生动”的故事。
我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。
我们谢绝答非所问。
我们谢绝自己不会、硬要回答。
我们感激每一个用户在编写答案时的努力与付出!