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

如何用简单的MySQL查询获取各评分的占比百分比?

解决MySQL评分占比百分比查询问题

没问题,这需求很常见,咱们可以用一个简单的分组查询结合聚合函数来实现。假设你的数据表名叫ratings,下面是具体的SQL语句:

SELECT 
    RATING,
    CONCAT(ROUND((COUNT(*) * 100.0) / (SELECT COUNT(*) FROM ratings), 0), '%') AS percentage
FROM ratings
GROUP BY RATING
ORDER BY RATING;

语句说明

  • COUNT(*):统计当前分组(同一评分)下的记录条数
  • (SELECT COUNT(*) FROM ratings):子查询获取表中所有记录的总数,这里用100.0而非100是为了触发浮点除法,避免整数除法导致的精度丢失
  • ROUND(..., 0):将计算结果取整,如果你需要保留小数位数,比如保留1位小数,可改为ROUND(..., 1)
  • CONCAT(..., '%'):将数字结果拼接成带百分号的字符串格式,符合预期的输出样式

代入你提供的测试数据后,执行结果会完美匹配需求:

  • 评分1对应25%
  • 评分2对应25%
  • 评分5对应50%

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 04:03:26