跳到主要内容
版本: 最新版本-3.5

percentile_approx

返回第 p 个百分位数的近似值,其中 p 的值介于 0 和 1 之间。

压缩参数是可选的,设置范围为 [2048, 10000]。 该值越大,精度越高,内存消耗越大,计算时间越长。 如果未指定或未超出[2048, 10000]的范围,则该函数以10000的默认压缩参数运行。

此函数使用固定大小的内存,因此对于具有高基数的列可以使用更少的内存,并且可以用于计算诸如tp99之类的统计信息。

语法

DOUBLE PERCENTILE_APPROX(expr, DOUBLE p[, DOUBLE compression])

示例

MySQL > select `table`, percentile_approx(cost_time,0.99)
from log_statis
group by `table`;
+----------+--------------------------------------+
| table | percentile_approx(`cost_time`, 0.99) |
+----------+--------------------------------------+
| test | 54.22 |
+----------+--------------------------------------+

MySQL > select `table`, percentile_approx(cost_time,0.99, 4096)
from log_statis
group by `table`;
+----------+----------------------------------------------+
| table | percentile_approx(`cost_time`, 0.99, 4096.0) |
+----------+----------------------------------------------+
| test | 54.21 |
+----------+----------------------------------------------+

关键词

PERCENTILE_APPROX,PERCENTILE,APPROX