看看26楼的这句话:

看来oracle在提取数据库的时候是按over(partition by ... order by ...)这个里边的partition by 和 order by后边的字段的一个个distinct值取出数据的。

仔细理解理解一下。

SQL> select * from t;

A          B          C                   D

---------- ---------- ---------- ----------

1          111        G                  87

1          111        G                  87

1          222        G                  85

1          222        G                  86

2          111        G                  80

2          111        G                  80

2          222        G                  81

2          222        G                  80

8 rows selected

只有partition by a,distinct a有2个值1和2:分2次提取数据

为1的提取一次,4条a值相同,4条平均86.25

为2的提取一次,4条a值相同,4条平均80.25

SQL> select a,b,c,avg(d) over(partition by a ),d from t;

A          B          C          AVG(D)OVER(PARTITIONBYA)          D

---------- ---------- ---------- ------------------------ ----------

1          111        G                             86.25         87

1          111        G                             86.25         87

1          222        G                             86.25         85

1          222        G                             86.25         86

2          111        G                             80.25         80

2          111        G                             80.25         80

2          222        G                             80.25         81

2          222        G                             80.25         80

8 rows selected

partition by a,order by b,distinct a,b有4个值:

1---111

1---222

2---111

2---222

分四次提取数据:

1---111:取出2条,a=1的2条取平均87

1---222:取出2条,a=1的4条取平均86.25

2---111:取出2条,a=2的2条取平均80

2---222:取出2条,a=2的4条取平均80.25

SQL> select a,b,c,avg(d) over(partition by a order by b ),d from t;

A          B          C          AVG(D)OVER(PARTITIONBYAORDERBY          D

---------- ---------- ---------- ------------------------------ ----------

1          111        G                                      87         87

1          111        G                                      87         87

1          222        G                                   86.25         85

1          222        G                                   86.25         86

2          111        G                                      80         80

2          111        G                                      80         80

2          222        G                                   80.25         81

2          222        G                                   80.25         80

8 rows selected

SQL>

oracle avg分析函数,分析函数之sum,avg相关推荐

  1. Oracle分析函数三——SUM,AVG,MIN,MAX,COUNT

    Oracle 分析函数--SUM,AVG,MIN,MAX,COUNT SUM 功能描述:该函数计算组中表达式的累积和. SAMPLE :下例计算同一经理下员工的薪水累积值 MIN 功能描述:在一个组中 ...

  2. oracle中聚合比较函数,Oracle聚合函数/分析函数

    oracle函数分两类:单行函数.多行函数.多行函数又分为聚合函数.组合函数,参数为数组,数据大小为记录数,这种数组不是普通高级语言的数组,是一种虚拟数组,当记录数大时,会将数据写入硬盘,内存中放的只 ...

  3. Hive分析窗口函数(一) SUM,AVG,MIN,MAX

    Hive分析窗口函数(一) SUM,AVG,MIN,MAX Hive分析窗口函数(一) SUM,AVG,MIN,MAX Hive中提供了越来越多的分析函数,用于完成负责的统计分析.抽时间将所有的分析窗 ...

  4. oracle 开窗子句,分析函数和开窗函数

    分析函数 分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计值 分析函数和聚合函数的区别 普通的 ...

  5. oracle中over()分析函数的用法

    摘自: http://www.poluoluo.com/jzxy/201004/81921.html 百度文库也记载了oracle中over()分析函数的用法 在泡坛子的时候中无意中发现了这个函数,才 ...

  6. 利用Oracle内置分析函数进行高效统计汇总

    利用Oracle内置分析函数进行高效统计汇总 分析函数是Oracle从8.1.6开始引入的一个新的概念,为我们分析数据提供了一种简单高效的处理方式.在分析函数出现以前,我们必须使用自联查询,子查询或者 ...

  7. Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略

    Database之SQLSever:SQL命令实现四则运算.desc降序.like模糊查询.distinct去重.MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略 ...

  8. linux avg 强力卸载,彻底卸载AVG维护清理软件

    平时一直裸机奔跑,安装的某管家也只是偶尔清理下垃圾文件.但是强迫症每次看见进程多那几个自启就想把它结束,哈哈. 于是就把管家卸载掉,在AVG官网上下载了AVG Ultimate(旗舰版)试用下 本想用 ...

  9. 【数据库】请问在 score表中执行以下操作:count( studentNo)、 count( score)、 count( * )、avg( studentNo)、 avg( score)、avg

    题目 请问在 score表中执行以下操作:count( studentNo). count( score). count( * ).avg( studentNo). avg( score).avg( ...

最新文章

  1. Centos7如何开启端口
  2. 扒一扒搜索引擎是如何工作的?
  3. html静态页面到jsp文件css错误
  4. HBase——强一致性详解
  5. MFC绘制动态曲线,用双缓冲绘图技术防闪烁
  6. 鼠标在计算机上被关闭了怎么处理,鼠标驱动程序丢失导致系统自动关闭的解决方法...
  7. webService调用模式比较
  8. 赋值语句的四元式【编译原理】
  9. 提高电火炉使用安全,微波雷达模组感应控制,雷达感应技术方案
  10. 从打字机效果的 N 种实现看JS定时器机制和前端动画
  11. noip模拟赛 Nephren Ruq Insania
  12. STM8S103之tim2捕获周期
  13. win python 判断 所有 子进程 结束_python 多进程如何终止或重启子进程?
  14. GS108E+GS105E+TP-LINK TL-WDR5620实现联通家庭宽带IPTV单线复用教程
  15. java.sql.SQLException: You have an error in your SQL syntax; check the manual that corresponds to yo
  16. 编程之美1.8:小飞的电梯调度算法
  17. html桌面转手机,教程:让你的手机桌面瞬间高逼格!
  18. ios9 网络请求出错The resource could not be loaded becaus
  19. Java常见面试题 Java面试必看 (一)
  20. 牙科植入物市场现状及未来发展趋势

热门文章

  1. 服务器维修app是什么状态,监控服务器状态app
  2. ubuntu导入第三方库_ubuntu用户切换、配置Python开发环境与所需的第三方库
  3. 云计算比本地计算机可靠,1-云计算复习题
  4. plt生成固定的colormap_白话生成对抗网络GAN及代码实现
  5. python函数和方法概念_第48p,什么是函数?,Python中函数的定义
  6. centos 卸载自带的 java
  7. 通讯编码器测试软件,西门子S7-200 SMART通过modbusRTU与绝对值编码器通信
  8. python逻辑运算(not、and、or)总结_python逻辑判断 () not and or
  9. swiper怎么在HTML引入JS文件,Swiper.js插件超简单实现轮播图
  10. Linux安装weblogic方式,Linux下weblogic安装图解