甲骨文提供了一些功能很强大的分析函数,使用这些函数可以完成可能需要存储过程来实现的需求。
分析函数计算基于一组数据行的聚合值,它们不同于聚合函数的是,它们为每一组返回多行结果。分析函数是除ORDER BY子句之外,在查询语句中最后执行的。所有的加入和所有的,GROUP BY和有子句都在分析函数之前执行。所以分析函数只能出现在选择或ORDER BY子句中。
下图为11.2版本官方文档中给出的语法示意图:
scott@TEST> select AVG (sal),得到电磁脉冲; AVG (SAL)才能 ---------- 2073.21429
作为分析函数的例子:
烤箱单独使用
scott@TEST> select deptno, ename, hiredate,萨尔,avg (sal),在(),avg 得到电磁脉冲; ,,,DEPTNO ename,, hiredate,,,,,萨尔avg - - - - - - - - - - -,- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -,- - - - - - - - - - - - - - - - - -安康;- - - - - - - - - - -,- - - - - - - - - - - 史密斯20,,,1980 - 12 - 17,就是,,,,800,2073.21429 30,艾伦,,1981 - 02年- 20,就是,,,1600,2073.21429 30,WARD 1981 - 02 - 22才能,就是,,,1250,2073.21429 20,琼斯,,1981 - 04 - 02,就是,,,2975,2073.21429 30,马丁,,1981 - 09 - 28,就是,,,1250,2073.21429 30日,布雷克,,1981 - 05 - 01,就是,,,2850,2073.21429 10,克拉克,,1981 - 06 - 09年,就是,,,2450,2073.21429 20日,斯科特,,1987 - 04 - 19,就是,,,3000,2073.21429 10,KING 1981 - 11 - 17才能,就是,,,5000,2073.21429 30,特纳,,1981 - 09 - 08 -,就是,,,1500,2073.21429 20,亚当斯,,1987 - 05 - 23,就是,,,1100,2073.21429 30,詹姆斯,,1981 - 12 - 03,就是,,,,950,2073.21429 20,FORD 1981 - 12 - 03 -才能,就是,,,3000,2073.21429 10,米勒,,1982 - 01 - 23,就是,,,,1300,
2073.21429从输出可以看出函数计算出了整体的平均值,并输出到每一行
eg2:使用query_partition_clause
scott@TEST> select deptno, ename, hiredate,萨尔,avg (sal),在(partition by  deptno), avg 得到电磁脉冲; ,,,DEPTNO ename,, hiredate,,,,,萨尔avg - - - - - - - - - - -,- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -,- - - - - - - - - - - - - - - - - -安康;- - - - - - - - - - -,- - - - - - - - - - - 10,克拉克,,1981 - 06 - 09年,就是,,,2450,2916.66667 10,KING 1981 - 11 - 17才能,就是,,,5000,2916.66667 10,米勒,,1982 - 01 - 23,就是,,,1300,2916.66667 20,琼斯,,1981 - 04 - 02,就是,,,,2975,,,,,,,2175 20,FORD 1981 - 12 - 03 -才能,就是,,,,3000,,,,,,,2175 20,亚当斯,,1987 - 05 - 23,就是,,,,1100,,,,,,,2175 史密斯20,,,1980 - 12 - 17,就是,,,,,800,,,,,,,2175 null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null学习甲骨文分析函数(解析函数)