oracle怎么计算占比,oracle计算比例
oracle 合计行占比如何计算?
不太理解你的想法,可以参考
我们拥有10多年网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供做网站、成都网站建设、微信开发、微信小程序定制开发、手机网站制作设计、H5页面制作、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。
SELECT MD6_AT,MD7_AT,
RATIO_TO_REPORT(HJ) OVER(partition by MD6_AT) 占比
FROM (
SELECT MD6_AT,MD7_AT,SUM(dh_c_stylename) AS HJ
FROM TABLE
GROUP BY MD6_AT,MD7_AT
)
oracle中如何求百分比?
实现代码:
ELECT(CASE WHEN db_psndoc.age=30 THEN '30岁以上'
WHEN db_psndoc.age30 THEN '30岁及以下' END)
ranges, COUNT(*) rs ,100*round(COUNT(*)/SUM(COUNT(*))
OVER(),4)||'%' percent FROM bd_psnd
GROUP BY CASE
WHEN bd_psndoc.age=30 then '30岁及以下'
WHEN db_psndoc.age=30 THEN '30岁以上'
END
扩展资料
sum(..) over(..)用法分析:
sum(…) over( ),对所有行求和;
sum(…) over( order by … ), 连续求和;
sum(…) over( partition by… ),同组内所行求和;
sum(…) over( partition by… order by … ),同第1点中的排序求和原理,只是范围限制在组内。
over不能单独使用,要和分析函数:rank(),dense_rank(),row_number(),sum()等一起使用。
over函数的参数:over(partition by columnname1 order by columnname2)
含义,按columname1指定的字段进行分组排序,或者说按字段columnname1的值进行分组排序。
例子:
select deptno,ename,sal,
sum(sal) over (partition by deptno order by ename) 部门连续求和,--各部门的薪水"连续"求和
sum(sal) over (partition by deptno) 部门总和, -- 部门统计的总和,同一部门总和不变
oracle 查询度量下每一列占合计的比重
select company,period,item,A*100/sum(A) over() from tab a;
这个是每个占所有公司的占比,如果要针对每个公司的占比,可以如下;
select company,period,item,A*100/sum(A) over(partition by company) from tab a;
如何在oracle里面实现占比统计的问题
where num=a
这些数据可以直接算的
count(decode(num,a,你要加的字段,null))
分享文章:oracle怎么计算占比,oracle计算比例
分享网址:http://abwzjs.com/article/hdcsdh.html