用oracle 的实现一个计算状态百分比的分组sql
假设有一个状态表 state_table,其中包含三个字段:id、name、status。
以下是一个示例 SQL 语句,用于计算每个状态的百分比,并按状态分组:
SELECT status, COUNT() * 100.0 / (SELECT COUNT() FROM state_table) AS percentage FROM state_table GROUP BY status;
这个 SQL 语句将状态表按状态分组,并使用 COUNT(*) 函数计算每个状态的记录数。然后,使用子查询计算状态表的总记录数,并将结果乘以 100.0 以获得百分比。最后,使用 GROUP BY 子句按状态进行分组,并使用 AS 关键字为计算出的百分比列指定别名。
原文地址: https://www.cveoy.top/t/topic/b6xl 著作权归作者所有。请勿转载和采集!