Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql 中位数

作者:自然ㄣ之光   发布日期:2025-02-20   浏览:103

-- 计算中位数的示例代码

-- 假设我们有一个名为 `numbers` 的表,其中有一列 `value` 存储了数值数据。
-- 我们的目标是计算这一列的中位数。

-- 创建示例表
CREATE TABLE numbers (
    id INT AUTO_INCREMENT PRIMARY KEY,
    value DECIMAL(10, 2)
);

-- 插入一些示例数据
INSERT INTO numbers (value) VALUES (10.5), (20.3), (30.7), (40.1), (50.9);

-- 计算中位数
WITH OrderedNumbers AS (
    SELECT 
        value,
        ROW_NUMBER() OVER (ORDER BY value) AS row_num,
        COUNT(*) OVER () AS total_rows
    FROM numbers
)
SELECT AVG(value) AS median
FROM OrderedNumbers
WHERE row_num IN ((total_rows + 1) / 2, (total_rows + 2) / 2);

-- 解释:
-- 1. 使用 CTE (Common Table Expression) `OrderedNumbers` 对 `value` 列进行排序,并为每一行分配一个行号 `row_num`。
-- 2. `COUNT(*) OVER ()` 计算总行数 `total_rows`。
-- 3. 最后,选择中间的一个或两个值(取决于总行数是奇数还是偶数),并计算它们的平均值作为中位数。

上一篇:pandas mysql

下一篇:mysql批量删除表

大家都在看

mysqlavg函数保留小数

mysql经纬度距离计算

存储过程mysql

mysql with语句

mysql时间加减

brew 启动mysql

unsigned在mysql中是什么意思

mysql 插入更新

python mysql update

mysql 查看权限

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站