MariaDB PERCENTILE_CONT() 函数的基础用法与实例

MariaDB PERCENTILE_CONT() 函数用来计算一个连续分布的百分位数,它可以在统计分析中用于确定某个值位于数据集中的位置。

发布于

MariaDB PERCENTILE_CONT() 函数用来计算一个连续分布的百分位数,它可以在统计分析中用于确定某个值位于数据集中的位置。例如,在市场分析或产品质量控制中,PERCENTILE_CONT() 可以帮助我们了解大部分用户的消费水平或产品的合格率。

语法

MariaDB PERCENTILE_CONT() 函数的语法如下:

PERCENTILE_CONT(fraction) WITHIN GROUP (ORDER BY sort_expression)
OVER (PARTITION BY column_name)

其中,fraction 是一个介于 0 和 1 之间的数,表示所求的百分位;sort_expression 是用于排序的表达式。

实例

计算中位数

此实例展示如何使用 PERCENTILE_CONT() 函数来计算中位数。

DROP TABLE IF EXISTS scores;
CREATE TABLE scores (score INT);
INSERT INTO scores VALUES (90), (80), (70), (60), (50);

SELECT PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY score) OVER () AS median_score FROM scores;

以下是该语句的输出:

+---------------+
| median_score  |
+---------------+
| 70.0000000000 |
| 70.0000000000 |
| 70.0000000000 |
| 70.0000000000 |
| 70.0000000000 |
+---------------+

这个结果表示,在 scores 表中,中位数是 70。

计算第一个四分位数

此实例展示如何计算数据集中的第一个四分位数(即 25% 百分位数)。

DROP TABLE IF EXISTS scores;
CREATE TABLE scores (score INT);
INSERT INTO scores VALUES (90), (80), (70), (60), (50);

SELECT PERCENTILE_CONT(0.25) WITHIN GROUP (ORDER BY score) OVER () AS first_quartile FROM scores;

以下是该语句的输出:

+----------------+
| first_quartile |
+----------------+
|  60.0000000000 |
|  60.0000000000 |
|  60.0000000000 |
|  60.0000000000 |
|  60.0000000000 |
+----------------+

这个结果表示,在 scores 表中,第一个四分位数是 60。

相关函数

以下是几个与 MariaDB PERCENTILE_CONT() 相关的几个函数:

  • MariaDB PERCENTILE_DISC() 函数用来计算一个离散分布的百分位数。
  • MariaDB CUME_DIST() 函数用来计算累积分布函数。
  • MariaDB RANK() 函数用来为每个行分配一个唯一的排名。

结论

PERCENTILE_CONT() 是一个强大的统计函数,可以帮助我们理解和分析数据集中的趋势和分布。通过合理地应用这个函数,我们可以从数据中提取出有价值的信息,为决策提供支持。