zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

求解Oracle求百分比的方法(oracle求百分比)

Oracle方法 求解 百分比
2023-06-13 09:17:01 时间

Oracle中,有时会有需求要求从一堆数据中求出每个值占总数的百分比,比如从一堆准备对服务的评价的用户中,求出每种评价占总评价的百分比。Oracle提供了两种方法可以帮助我们快速的求解此类需求。

一,利用除法计算,之后转换成百分比

比如从一组用户对服务的评价中,统计不同评价的次数,并求出每种评价占总评价的百分比,具体代码实现如下:

`sql

select item , rate ,round(rate/total *100,2) || % pct

from(

select

item, count(*) rate,

sum(count(*)) over () total

from t

group by item

)

说明:先使用count(*)统计每种评价出现的次数rate,使用sum(count(*)) over ()求出总评价总次数total,计算比值rate/total,最后将计算出的比值转换成百分比格式。
二,使用分析函数计算还可以使用分析函数计算,如果需求是需要按用户再细分,可以使用如下代码:
```sql--求比值
select USERID,ITEM, rate,
round(100*rate/sum(rate) over (partition by userid),2)||"%" pctfrom(
select USERID,ITEM, count(*) rate from t
group by USERID,ITEM)

以上是求解Oracle求百分比的两种方法,利用sql语句可以快速的求解出百分比,能够满足不同需求要求。


我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题

本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 求解Oracle求百分比的方法(oracle求百分比)