oracle常用分析函数与聚合函数的用法
今天是2019年第一天,在此祝大家新年快乐,梦想还在路上,让我们继续加油!
应之前的计划,今天完成这篇记录,也借此记录自己的成长。
一、几个排名函数的语法和用法:
rank ( ) over ([partition by col] order by col )
dense_rank ( ) over ([partition by col] order by col )
rownumber ( ) over ( [partition by col] order by col )
rank() 是排名的函数,该函数组内排序后会进行跳号,分数相同的作为并列。
dense_rank() 该函数不会跳号,分数相同为并列第一,下一个是第二。
row_number() 可以通过over 根据某字段排序完之后进行组内(如果有partition by)排序。
下图是测试结果,先来看图消化一下:
下边是代码:
with lcy as (
select regexp_substr('10,20,30,30,50,60,80,80,90,100','[^,]+',1,level) score from dual connect by level <= 10
)
select score, rank()over (order by to_number(score) desc) "rank",dense_rank()over (order by to_number(score) desc) "dense_rank" ,row_number()over (order by to_number(score) desc) "row_number" from lcy ;
解释可能不够详细,但我觉得截图展示更直观一点。
二、Oracle分析函数与聚合函数的区别:
分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是对于每个组返回多行,而聚合函数对于每个组只返回一行。
(肚里墨水太少,还是直接看例子吧)
几种常用的聚合函数(这里就不截图了,大家可以试一下):
1、 AVG(DISTINCT|ALL)
ALL表示对所有的值求平均值,DISTINCT只对不同的值求平均值
SELECT AVG(SAL) FROM SCOTT.EMP;SELECT AVG(DISTINCT SAL) FROM SCOTT.EMP;
2、MAX(DISTINCT|ALL)
求最大值,ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次
(加不加查询结果一致,不知DISTINCT有什么用途,不同于AVG等聚合函数)
SELECT MAX(DISTINCT SAL) FROM SCOTT.EMP;SELECT MAX(SAL) FROM SCOTT.EMP
3、 MIN(DISTINCT|ALL)
求最小值,ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次
SELECT MIN(SAL) FROM SCOTT.EMP;SELECT MIN(DISTINCT SAL) FROM SCOTT.EMP;
4、STDDEV(distinct|all)
求标准差,ALL表示对所有的值求标准差,DISTINCT表示只对不同的值求标准差
SELECT STDDEV(SAL) FROM SCOTT.EMP;SELECT STDDEV(DISTINCT SAL) FROM SCOTT.EMP;
5、VARIANCE(DISTINCT|ALL)
求协方差 ALL表示对所有的值求协方差,DISTINCT表示只对不同的值求协方差
SELECT VARIANCE(SAL) FROM SCOTT.EMP;SELECT VARIANCE(DISTINCT SAL) FROM SCOTT.EMP;
6、SUM(DISTINCT|ALL)
求和 ALL表示对所有值求和,DISTINCT表示只对不同值求和(相同值只取一次)
SELECT SUM(SAL) FROM SCOTT.EMP;SELECT SUM(DISTINCT SAL) FROM SCOTT.EMP;
7、COUNT(DISTINCT|ALL)
求记录、数据个数。 ALL对所有记录,数组做统计, DISTINCT只对不同值统计(相同值只取一次)
SELECT COUNT(SAL) FROM SCOTT.EMP;SELECT COUNT(DISTINCT SAL) FROM SCOTT.EMP;
先写这么多吧,今天总结的有点潦草,之后的话或许还会有补充,说实话一开始,虽然我会用,但是不知道区别,在这里很感谢我老大的指导,才得以完成这篇文章,我会继续努力哒!
oracle常用分析函数与聚合函数的用法相关推荐
- mysql function 表名作为参数_mysql 常用的分组聚合函数
mysql 常用的分组聚合函数 1.聚合运算 一般情况下,需要的聚合数据(和,平均值,最大,最小等)并不总是存储在表中,但是可以执行存储数据的计算来获取它. 根据定义,聚合函数对一组值执行计算并返回单 ...
- oracle 分组 top10 sql,oracle sql 合龙 分组 聚合函数
oracle sql 合并 分组 聚合函数 工作中有一需求,要根据多个表的数据统计情况来更新另外一个表中的某个字段,折腾了会才写出如下sql: --最终版更新语句 update moka_user_u ...
- 三.Oracle常用数据类型及单行函数总结
1.课外扩展知识 UTF-8 一个中文占3个字节,GBK 一个中文占2个字节ctrl+E:可以找到sql查询语句的历史记录(在sql-wiwdow操作)在doc里输desc 表名可以查出该表所有列的类 ...
- Oracle 行转列 pivot函数基本用法
2018年9月30日22点,眼看着就10月份了,回头看下,8月份就写了一篇博客,9月一篇都没写,想着还是得续一续. 刚好前几天,帮一个群友处理了一个关于Oracle中行转列,根据查询中有的项目,动态转 ...
- oracle之分析函数 开窗函数,Oracle之分析函数、开窗函数
一.rank() over(partition by 字段1 order by 字段2) 从最经典的一个例子来说: 这是原始表结构: 现在需要增加一列,用来统计每天不同城市的完成率排名. 这意味着要对 ...
- mysql聚合函数count用法_MySQL中聚合函数count的使用和性能优化技巧
本文的环境是Windows 10,MySQL版本是5.7.12-log 一. 基本使用 count的基本作用是有两个: 统计某个列的数据的数量: 统计结果集的行数: 用来获取满足条件的数据的数量.但是 ...
- Mysql(10)——聚合函数的用法
(1)max()的用法 我们想查寻在is_deleted=0下,id的最大值,可用如上语句,可以查出id最大为4. (2)min()的用法 同上: (3)count()的用法 比如上面的count(* ...
- Oracle数据库中的instr函数的用法
一.instr函数的用法 在Oracle中可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符.在一个字符串中查找指定的字符,返回被查找到的指定的字符的位置. 语法: instr(so ...
- java聚合函数_count()聚合函数正确用法
count()聚合计算 count()是聚合函数,对于返回的结果集,一行行地判断,累计值加1,最后返回累计值,count(*).count(主键ID)和count(1)表示返回满足条件的结果集的总行数 ...
最新文章
- 手机GSM--SIM卡体系结构
- 人工智能听了很多遍,都应用在哪些领域了你知道吗?
- 15年来这8门编程语言位置十分稳定,C#从低谷开始爬升
- 信息学奥赛一本通(1266:【例9.10】机器分配)
- SQLSERVER查看阻塞和死锁的进程以及执行的语句
- 在云上搭建大规模实时数据流处理系统
- Centos 8 安装和配置 VNC 服务,让 MAC 可以远程桌面管理Centos(linux)
- java 获取拦截url,java – 从数据库或属性中获取Spring Security拦截URL
- 方法代码ASP.NET MVC如何使用Ajax的辅助方法
- 单例初始化(MRC模式之autorelease)
- [Hbase]Hbase知识大全
- 电机学直流电机知识点(根据现有题目的总结)
- Easy RM to MP3 Converter漏洞分析报告
- 气象数据的简单数据分析处理——基于Notebook
- 微信小程序—轮播图+背景变化
- 【洛谷刷题笔记】P4093 [HEOI2016/TJOI2016] 序列
- vo、dto、bo、do、po的概念理解以及与controller、service、dao层的对应关系
- Mac相机不可用怎么办?教你恢复相机连接的方法
- 用Python搓一个太阳系
- Coursera | Andrew Ng (02-week-1-1.12)—梯度的数值逼近
热门文章
- Starlink卫星动力学系统仿真建模第一讲
- leaflet地图概念框架图
- LCA(倍增+Tarjan)和BFS、DFS以及Prim、Kruskal
- Linux网络编程之获取网络天气信息
- Verilog 综合练习 电子钟的实现
- STL:容器共性机制、容器元素深拷贝和浅拷贝问题
- Java编程:颜色色带图片的生成
- 三星折叠屏手机爆火,但国内市场已经“不需要”
- java打开浏览器_Java调用浏览器打开网页完整实例
- 虚拟偶像 “造星” 指南,二次元、超写实、智能驱动,你会粉上谁?