You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL计算占比分布:基于表格数据统计各类型对应数量的百分比

实现SQL

首先假设你的原始数据表名为type_quant,可根据实际表名替换。

支持窗口函数的数据库(MySQL8.0+、PostgreSQL、SparkSQL、Hive等通用写法)

SELECT
  type,
  REPLACE(ROUND(quantitie * 100.0 / SUM(quantitie) OVER(), 2), '.', ',') AS percentage
FROM type_quant;

不支持窗口函数的低版本数据库(如MySQL5.x)

SELECT
  type,
  REPLACE(ROUND(quantitie * 100.0 / total, 2), '.', ',') AS percentage
FROM type_quant,
(SELECT SUM(quantitie) AS total FROM type_quant) AS total_table;

逻辑说明

  • 先计算全表quantitie字段的总和,每条记录的quantitie除以总和后乘以100得到百分比数值
  • ROUND函数控制保留的小数位数,可根据需要调整第二个参数:要保留1位小数就填1,保留2位就填2,完全匹配示例输出的精度要求
  • REPLACE函数将默认的小数点.替换为预期输出里使用的逗号,

内容的提问来源于stack exchange,提问作者scalacode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 06:03:01