oracle数据库函数之============‘’分析函数和聚合函数‘’
1分析函数
分析函数根据一组行来进行聚合计算,用于计算完成狙击的累积排名等,分析函数为每组记录返回多个行
rank_number()
查询结果按照次序排列,不存在并列和站位的情况,可以用于做Oracle的分页
例如:SELECT tname,sal,row_number() OVER(ORDER BY sal DESC) 降序 FROM teacher;
查询结果如图:
rank()
排序结果如有并列成绩,则并列成绩就会占取下一顺序的位置,下一个成绩则会跳过下一序号排列
例如:SELECT tname,sal,RANK() OVER(PARTITION BY deptno ORDER BY sal) 降序 FROM teacher;
dense_rank()
查询的排序结果如果有相同成绩,则相同的成绩名次并列但不占下一个名次的位置,查询的结果还是顺序的
例如:SELECT tname,sal,dense_rank() OVER(PARTITION BY deptno ORDER BY sal DESC) 降序 FROM teacher;
2.聚合函数
聚合函数是基于一组数据来返回结果,返回的结果只有一个值
常用聚合函数有avg() max() sum() min() count(0);
--老师工资平均数
SELECT AVG(sal) FROM teacher;
--老师工资总数
SELECT SUM(sal) FROM teacher;
--老师总数
SELECT COUNT(0) FROM teacher;
注:面对大量数据时count(0)的处理效率要明显高于count(*)
--老师工资最大值
SELECT MAX(sal) FROM teacher;
-老师工资最小值
SELECT MIN(sal) FROM teacher;-
--查询各部门的编号,最高工资,最低工资,工资总数,平均工资,并按照部门的工资总数降序排列
SELECT deptno,MAX(sal),MIN(sal),SUM(sal),AVG(sal) FROM teacher GROUP BY deptno ORDER BY SUM(sal);
oracle数据库函数之============‘’分析函数和聚合函数‘’的更多相关文章
- Oracle数据库函数总结
1.ceil()向上取整,结果为124.select ceil(123.123) from dual;2.floor()向下取整,结果为123.select floor(123.123) from d ...
- oracle:自定义多行合并聚合函数
原始表 COUNTRY CITY -------------------- -------------- 中国 台北 中国 香港 ...
- 微软BI 之SSAS 系列 - 多维数据集中度量值设计时的聚合函数 (累加性_半累加性和非累加性)
在 SSAS 系列 - 实现第一个 Cube 以及角色扮演维度,度量值格式化和计算成员的创建 中主要是通过已存在的维度和事实数据创建了一个多维数据集,并同时解释了 Role-Playing Dimen ...
- .Net程序员学用Oracle系列(22):分析函数(OVER)
1.函数语法 1.1.语法概述 1.2.窗口详解 1.2.1.ROWS 窗口 1.2.2.RANGE 窗口 2.函数用法 2.1.普通统计类函数 2.2.数据排序类函数 2.3.数据分布类函数 2.4 ...
- SQL Server 分析函数和排名函数
分析函数基于分组,计算分组内数据的聚合值,经常会和窗口函数OVER()一起使用,使用分析函数可以很方便地计算同比和环比,获得中位数,获得分组的最大值和最小值.分析函数和聚合函数不同,不需要GROUP ...
- 第08章 MySQL聚合函数
第08章 MySQL聚合函数 我们上一章讲到了 SQL 单行函数.实际上 SQL 函数还有一类,叫做聚合(或聚集.分组)函数,它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值. 1 ...
- 第二天,导出文件sql,查询,视图view,聚合函数,反模式,字符串处理函数
//把数据库导出到脚本文件mysqldump -uroot -p1234 --databases abc > d:/a/abc.sql CREATE TABLE stud( id INT PRI ...
- Java调用MySql数据库函数
Java调用MySql数据库函数 /** * 调用mysql的自定义函数 * */ private void test() { logger.info("show task start &q ...
- 史上最全的mysql聚合函数总结(与分组一起使用)
1.首先我们需要了解下什么是聚合函数 聚合函数aggregation function又称为组函数. 认情况下 聚合函数会对当前所在表当做一个组进行统计. 2.聚合函数的特点 1.每个组函数接收一个参 ...
随机推荐
- javascript 创建 div
纯JAVASCRIPPT创建 (1):document.getElementById("要创建DIV位置的ID").innerHTML='<div>div里面的 ...
- XAF 如何将数据库中Byte array图片显示出来
问题比较简单,直接上代码. private Image _Cover; [Size(SizeAttribute.Unlimited), ValueConverter(typeof(ImageValue ...
- windows防火墙命令
删除防火墙:netsh advfirewall firewall delete rule name=%gate_rule_name% 添加防火墙:netsh advfirewall firewall ...
- 新手入门 keil MDK5 建立STM32工程
keil uvison 是用来开发 单片机的,Keil mdk 是用来开发 ARM 的. 芯片型号是:STM32F103RB6 1,新建工程 配置属性 晶振为8M 根据实际晶振选择 生成 HEX 文件 ...
- MarkDown简要语法
1.标题 2.列表 3. 引用 4.图片与连接 实现链接有两种方式,分别是内联方式和引用方式 内联方式 [This baidu link](http://www.baidu.com)效果如:This ...
- unity3d 第三人称视角的人物移动以及相机控制
何谓第三人称?就像这样: 用wasd控制人物移动,同时保持在相机的中心.用鼠标右键与滚轮控制相机的角度和距离. 先说一下人物的移动: 首先给作为主角的单位加上 Charactor Controller ...
- knockoutjs入门
Knockoutjs入门 (概念相关)对于asp.net 后端开发人员来说我们几乎都接触过mvc框架.knockoutjs是MVVM模式对于我们来说有点陌生.Knockout是一个轻量级的UI类库,通 ...
- python 学习随笔
要求: 用户输入一个数,比如输入387. 需要把387打乱,然后将这三个数组合成最大数输出. 如果最大值和用户输入的等大,输出-1. 方法一: #!/user/bin/env python # _*_ ...
- 日志管理log4js的配置
以前就是在app.js 直接用,今天把它抽出来了. log4js.json { "appenders": [ { "type":"console&qu ...
- 2016年12月29日 星期四 --出埃及记 Exodus 21:24
2016年12月29日 星期四 --出埃及记 Exodus 21:24 eye for eye, tooth for tooth, hand for hand, foot for foot,以眼还眼, ...