oracle分析函数之ratio_to_report
ratio_to_report主要完成对百分比的计算,语法为
ratio_to_report(exp) over()
也就是根据over窗口函数的作用区间,求出作用区间中的单个值在整个区间的总值的比重
比如要求scott用户下emp表中每个员工的工资占本部门的比重
select ename,sal,deptno,ratio_to_report(sal) over(partition by deptno) ratio from emp;
需要注意的是:exp表达式不能进行ratio_to_report函数的嵌套,但是可以使用其他的函数;当sal的值乘以一个常数值的时候
并不影响最后的计算结果
比如select ename,sal,deptno,ratio_to_report(sal*100) over(partition by deptno) ratio from emp;的计算结果
和第一个sql的计算结果是一样的
如果想以%的形式来表示的话,可以通过下面的语句来实现
select ename,sal,deptno,to_char(round(ratio*100,2))||'%' baifenbi from 
(select ename,sal,deptno,ratio_to_report(sal) over(partition by deptno) ratio from emp);
oracle分析函数之ratio_to_report的更多相关文章
- Oracle分析函数——函数列表
		--------------聚合函数 SUM :该函数计算组中表达式的累积和 MIN :在一个组中的数据窗口中查找表达式的最小值 MAX :在一个组中的数据窗口中查找表达式的最大值 AVG :用于计算 ... 
- Oracle分析函数大全
		分析函数又叫开窗函数,OLAP函数等,因为有人问我用过开窗函数没,呵,什么是开窗函数,从来没听过,难道是分析函数么.哈哈,最后还真是分析函数哦!用过的东西别名也应该知道,赶上这么个事,就剽窃一眼Ora ... 
- Oracle分析函数巧妙使用
		在 Oracle中使用Sql必须弄懂分析函数 Oracle开发专题之:分析函数(OVER) 1 Oracle开发专题之:分析函数2(Rank, Dense_rank, row_number) 6 Or ... 
- oracle分析函数   (转)
		一.总体介绍 12.1 分析函数如何工作 语法 FUNCTION_NAME(<参数>,…) OVER (<PARTITION BY 表达式,…> <ORDER BY 表达 ... 
- Oracle分析函数入门
		一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ... 
- [转]oracle分析函数Rank, Dense_rank, row_number
		oracle分析函数Rank, Dense_rank, row_number 分析函数2(Rank, Dense_rank, row_number) 目录 ==================== ... 
- [转]oracle 分析函数over
		oracle 分析函数over 分析函数(OVER) 目录: =============================================== 1.Oracle分析函数简介 2. O ... 
- oracle分析函数与over()(转)
		文章参考:http://blog.csdn.net/haiross/article/details/15336313 -- Oracle分析函数入门-- 分析函数是什么? 分析函数是Oracle专门用 ... 
- Oracle分析函数 — rank, dense_rank, row_number用法
		本文通过例子演示了Oracle分析函数 —— rank, dense_rank, row_number的用法. //首先建score表 create table score( course nva ... 
随机推荐
- java笔记之线程方式1启动线程
			* 需求:我们要实现多线程的程序. * 如何实现呢? * 由于线程是依赖进程而存在的,所以我们应该先创建一个进程出来. * 而进程是由系统创建的,所以我们应该去调用系统功能创建一个进程. * ... 
- bzoj 3566: [SHOI2014]概率充电器【树形概率dp】
			设g[u]为这个点被儿子和自己充上电的概率,f[u]为被儿子.父亲和自己充上电的概率 然后根据贝叶斯公式(好像是叫这个),1.P(A+B)=P(A)+P(B)-P(A)*P(B),2.P(A)=(P( ... 
- bzoj 3528 [Zjoi2014]星系调查【树链剖分+数学】
			参考:https://www.cnblogs.com/zhuohan123/p/3698852.html 首先,根据点到直线距离公式 \[ d=\frac{kx_0-y_0+b}{\sqrt{k^{2 ... 
- bzoj 4951: [Wf2017]Money for Nothing【分治】
			参考:https://blog.csdn.net/herobrine_tkj/article/details/78404426?locationNum=8&fps=1 为什么从1开始存就挂了, ... 
- 第四章vs2107 代码实际运用-后台权限管理讲解  创建角色
			先看一下项目整体结构图: 实体类和数据操作都在前面用TT模板批量生产了.下面开始介绍权限代码这块的逻辑. 创建角色开始. 1. 角色的创建我们用到三张表 A.menuinfo(菜单表) role(角 ... 
- bzoj 2257[Jsoi2009]瓶子和燃料  数论/裴蜀定理
			题目 Description jyy就一直想着尽快回地球,可惜他飞船的燃料不够了. 有一天他又去向火星人要燃料,这次火星人答应了,要jyy用飞船上的瓶子来换.jyy 的飞船上共有 N个瓶子(1< ... 
- ACM输入外挂
			一.什么是输入挂 scanf的输入速度不cin快得多,那么有没有比scanf更快的东西呢?这就是要用到输入挂了. 二.什么时候使用输入挂 当输入规模达到1x10^6次方的时候,就需要输入挂,否则很可能 ... 
- spoj DYNALCA - Dynamic LCA
			http://www.spoj.com/problems/DYNALCA/ 此题link.cut要求不能换根,当然也保证link时其中一个点必定已经是根. 方法: void link(Node *x, ... 
- 题解报告:NYOJ #311完全背包(恰好装满)
			描述: 直接说题意,完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用.第i种物品的体积是c,价值是w.求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大.本题 ... 
- SSRS域账号下 User 'XXX' does not have required permissions的处理方法
			SSRS安装完成后,点击Report Manager URL,提示:User 'XXX' does not have required permissions. Verify that suffici ... 
