中位数:如果一组数据的个数是奇数,则中位数就是正中间那个数;如果数据的个数是偶数,则中位数通常是中间两个数的平均值。
中位数(Median)又称中值,是统计学中的一个重要概念。它是指一组数据按照大小顺序排列后,位于中间位置的数。如果一组数据的个数是奇数,则中位数就是正中间那个数;如果数据的个数是偶数,则中位数通常是中间两个数的平均值。中位数不受数据极端值的影响,能够较好地代表数据集的中等水平。在计算中位数时,首先需要对数据进行排序,然后根据数据的个数是奇数还是偶数来确定中位数的具体数值。
中位数:
WITH 这是生成的临时表名 AS (
SELECT
这是要计算中位数的字段 AS field,
ROW_NUMBER() OVER ( ORDER BY CAST( field AS DECIMAL ( 10, 2 )) ASC ) AS rn,
COUNT(*) OVER () AS total_rows
FROM
这是要计算中位数的表
WHERE
这里有查询条件就写查询条件
)
SELECT
AVG( CASE WHEN rn IN ( FLOOR(( total_rows + 1 ) / 2.0 ), FLOOR(( total_rows + 2 ) / 2.0 )) THEN field END ) AS middleValue
FROM
RankedData
WITH AS是在MySql8.0 及以上版本中出现的,可以将查询结果存储在一个临时表中,在查询语句中可以使用这个结果集。
仅供参考,希望对您有所帮助,感谢阅读。