我想计算MYSQL中的百分位数。请告诉我这是计算百分位数的正确方法。
<span> caption for img 2 </span>
答案 0 :(得分:0)
我试图解决这个问题很长一段时间,然后我找到了以下答案。老实说。即使对于大桌子也很快(我使用它的桌子包含大约5密耳的记录,需要几秒钟)。
SELECT
CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(
GROUP_CONCAT(field_name ORDER BY field_name SEPARATOR ','),
',', 95/100 * COUNT(*) + 1), ',', -1) AS DECIMAL) AS '95th Per'
FROM table_name;
您可以想象只需将table_name和field_name替换为表和列的名称。
有关详细信息,请查看Roland Bouman的原始帖子