这个Oracle教程解释了如何使用Oracle / PLSQL AVG函数。

Oracle / PLSQL AVG函数计算表达式的平均值。

Avg 函数对一组行进行操作,并返回一行输出。

空值被avg忽略。

您可以使用DISTINCT关键字排除重复条目。

语法

Oracle / PLSQL AVG函数的语法是:

SELECT AVG( expression )

FROM tables

WHERE conditions;

表达式可以是数字字段或公式。

以下sql语句计算employee表中salary列的平均值。

SELECT AVG(salary) AS "Avg Salary"

FROM employees

WHERE salary > 25000;

我们将AVG(salary)表达式别名为“Avg Salary”。

实例

以下代码显示了如何为employee表的salary列计算平均值。

SQL> CREATE TABLE EMP (EMPNO NUMBER(4) NOT NULL,

2 ENAME VARCHAR2(10),

3 JOB VARCHAR2(9),

4 SAL NUMBER(7, 2),

5 DEPTNO NUMBER(2));

SQL> INSERT INTO EMP VALUES (1, 'SMITH', 'CLERK', 800, 20);

SQL> INSERT INTO EMP VALUES (2, 'ALLEN', 'SALESMAN', 1250, 30);

SQL> INSERT INTO EMP VALUES (3, 'WARD', 'SALESMAN', 1250, 30);

SQL> INSERT INTO EMP VALUES (4, 'JONES', 'MANAGER', 2975, 20);

SQL> INSERT INTO EMP VALUES (5, 'MARTIN','SALESMAN', 1250, 30);

SQL> INSERT INTO EMP VALUES (6, 'BLAKE', 'MANAGER', 2850, 30);

SQL> INSERT INTO EMP VALUES (7, 'CLARK', 'MANAGER', 2850, 10);

SQL> INSERT INTO EMP VALUES (8, 'SCOTT', 'ANALYST', 3000, 20);

SQL> INSERT INTO EMP VALUES (9, 'KING', 'PRESIDENT',3000, 10);

SQL> INSERT INTO EMP VALUES (10,'TURNER','SALESMAN', 1500, 30);

SQL> INSERT INTO EMP VALUES (11,'ADAMS', 'CLERK', 1500, 20);

SQL> select avg(sal) from emp;

AVG(SAL)

----------

2020.45455

SQL>

示例 - AVG函数中使用GROUP BY

AVG函数中使用 group by子句:

SQL> select job, avg(sal) from emp group by job;

JOB AVG(SAL)

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

CLERK 1150

SALESMAN 1312.5

PRESIDENT 3000

MANAGER 2891.66667

ANALYST 3000

SQL>

示例 - AVG函数中使用公式

avg函数内部使用数字计算:

SQL> select job, avg(sal+ 1000) from emp group by job;

JOB AVG(SAL+1000)

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

CLERK 2150

SALESMAN 2312.5

PRESIDENT 4000

MANAGER 3891.66667

ANALYST 4000

SQL>

示例 - AVG函数中使用DISTINCT

获取唯一的平均值:

SQL> select job, avg(distinct sal) from emp group by job;

JOB AVG(DISTINCTSAL)

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

ANALYST 3000

CLERK 1150

MANAGER 2912.5

PRESIDENT 3000

SALESMAN 1375

SQL>

oracle平均值语句,Oracle / PLSQL AVG函数相关推荐

  1. oracle revoke语句,Oracle ROLLBACK语句

    在Oracle中,ROLLBACK语句可以用来撤销当前事务或有问题的事务.本教程就将教大家如何使用ROLLBACK语句. ROLLBACK语法 ROLLBACK [ WORK ] [ TO [SAVE ...

  2. JAVA中oracle分页语句,oracle分页查询语句,java得到分页查询语句的方法

    oracle分页查询语句 select * from ( select a.*, rownum rn from (select * from table_name) a where rownum &l ...

  3. sql oracle 递归查询语句,oracle递归函数 oracle中SQL递归查询

    关于oracle递归调用的自定义函数如何结束 比如存储过程a中有b,b中含a.用return结束判断,执行还是锁表,怎么解决 关于oracle递归调用的自定义函数如何结束 可以调用. C语言最基本的模 ...

  4. oracle output语句,Oracle Returning 语句用法总结

    场景 在存储过程.PL/SQL块里需要返回INSERT.DELETE.UPDATE.MERGE等DML语句执行后的信息时使用,合理使用returning能够简化程序逻辑.提高程序性能. 概述 创建测试 ...

  5. 检测oracle的语句,oracle功能检测sql语句

    1. 监控事例的等候 select event,sum(decode(wait_Time,0,0,1)) "Prev", sum(decode(wait_Time,0,1,0)) ...

  6. sql oracle 递归查询语句,Oracle使用SQL语句进行递归查询

    id pid 问题描述: 1 0 2 0 3 1 4 1 5 2 6 2 7 3 8 4 9 5 取出id为1及其下属的所有的数据,结果为下 id pid 1 0 3 1 4 1 7 3 8 4 SQ ...

  7. oracle有的表带$,Oracle Update

    在表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.象sql server提供了update的from 子句,可以将要更新的表与其它的数据源连接起来.虽然只能对一个表进行更新,但是通 ...

  8. oracle sum函数返回类型,Oracle / PLSQL SUM函数

    这个Oracle教程解释了如何使用Oracle / PLSQL SUM函数. SUM(x) 添加x中的所有值,并返回总和. SUM函数对一组行进行操作,并返回一行输出. Null值被SUM函数忽略.您 ...

  9. oracle dplsql.bsq,Oracle PLSQL语言初级教程之过程和函数

    Oracle PL/SQL语言初级教程之过程和函数 过程和函数 过程和函数都以编译后的形式存放在数据库中,函数可以没有参数也可以有多个参数并有一个返回值.过程有零个或多个参数,没有返回值.函数和过程都 ...

最新文章

  1. Windows下的磁盘管理(二)
  2. python编程入门到实践 百度云-python网络爬虫从入门到实践pdf
  3. 提高面试代码质量的三要素
  4. 发展受阻第一至四季/全集Arrested迅雷下载
  5. 回顾一些重要的CNN改进模型(你真的了解 Convolutional Neural Networks 么)
  6. ASP.NET MVC视图引擎SPARK文档中文版
  7. python 单例模式内存泄露_彻底搞懂Java内存泄露
  8. OS / Linux / SIGKILL 和 SIGTERM、SIGINT
  9. 使用撤回流RetractStream的场景
  10. MAC下搭建java的开发环境
  11. 如何使用Create React App DevOps自动化工作中所有无聊的部分
  12. 8月7日 使用Jquery做表格的隔行变色,点击事件
  13. GoF 的 23 种设计模式
  14. word转pdf免费网站
  15. 怎么使用手机号申请邮箱,注册移动手机邮箱有哪些步骤?
  16. 数值代数中的数学原理及其证明(一)
  17. 水箱建模最小二乘法_消防水箱的设置要求
  18. 怎样一键比较2个CAD图纸文件的不同呢?
  19. c语言两个字符串比较,将两个字符串s1和s2比较,如果s1s2,作业 - 编一个程序,将两个字符串s1和s2比较,如果.doc...
  20. 通用nodejs正则表达式

热门文章

  1. 配置虚拟机桥接网络的步骤
  2. 人像抠图怎么抠出来?这几种抠图方法一看就会
  3. insert oracle速度,[Oracle] Insert into速度测试nologging+parallel
  4. H5分享链接,禁止微信浏览器放大字体导致排版错乱不适配问题
  5. map遍历的5种方法分享
  6. php和python区别-PHP和Python的区别是什么?
  7. 【php毕业设计】基于php+mysql+smarttemplate的图片共享系统设计与实现(毕业论文+程序源码)——图片共享系统
  8. 牛顿问题(牛吃草问题)-python题解
  9. 安排:《蚂蚁花呗1234面:Redis+分布式架构+MySQL+linux+红黑树》
  10. 后App时代的小程序化技术?