组函数AVG(字段)的使用。

在日常写代码的时候,没有特别的注意avg(字段)组函数。今天仔细聊一聊avg()函数的使用注意事项

SELECT AVG(EMP.COMM) FROM EMP;    -- 采用avg组函数的时候,会自动忽略掉为字段值为空值的选项。


SELECT SUM(EMP.COMM) / COUNT(*) AS "AVG(EMP.COMM)" FROM EMP;     -- count(*)数量为 所有的记录的数量。


SELECT SUM(EMP.COMM) / COUNT(EMP.COMM) AS "AVG(EMP.COMM)" FROM EMP;   -- count(字段) 字段为不为空的记录的数量。


SELECT AVG(NVL(EMP.COMM,0))  AS "AVG(EMP.COMM)" FROM EMP;    -- oracle数据库中 NVL(字段,值) 字段如果为空,则 用值替代。 如果为mysql数据库,NVL()替换为IFNULL(字段,值)

下面说一下,avg(字段)  的具体的使用区别

AVG(字段)   ==   SUM(字段)   /   COUNT(字段)
AVG(字段)   !=    SUM(字段)   /   COUNT(*)
AVG(NVL(字段,0))   ==   SUM(字段)   /   COUNT(*)

原文地址:https://www.cnblogs.com/rensheng/p/10061863.html

时间: 2024-10-10 02:31:43

组函数AVG(字段)的使用。的相关文章

6.组函数(avg(),sum(),max(),min(),count())、多行函数,分组数据(group by,求各部门的平均工资),分组过滤(having和where),sql优化

 1组函数 avg(),sum(),max(),min(),count()案例: selectavg(sal),sum(sal),max(sal),min(sal),count(sal) from emp / 截图: 2 组函数和null在一起 案例:求员工的平均奖金 错误sql: select avg(comm) 方式1,sum(comm)/count(comm)方式2,sum(comm)/count(*) 方式3 from emp; 截图: 错误原因: select count(comm

oracle 组函数 max min等

一.组函数嵌套 ORACLE中规定,组函数嵌套只能嵌两层.其实多层嵌套并没有实际的用途,因此ORACLE没有提供组函数的多层嵌套.但是,单行函数是可以多层嵌套的. 二. 1.Oracle包含以下组函数  -AVG([DISTINCT|ALL]n) 返回平均值,忽略空值  -COUNT({*|[DISTINCT|ALL]}expr) 返回记录的数量,用*包含空值,否则不包含空值  -MAX([DISTINCT|ALL]expr)  返回最大值,忽略空值  -MIN([DISTINCT|ALL]ex

组函数及分组统计

分组函数 SQL中常用的分组函数 Count(): 计数 Max():求最大值 Min():求最小值 Avg():求平均值 Sum():求和 -- 统计emp表中的人数 select count(*) from emp; -- 统计获得奖金的人数 select count(comm) from emp; -- 求所有雇员的最低工资 select min(sal) from emp; -- 求所有雇员的最高工资 select max(sal) from emp; -- 求部门编号为20的雇员的平均

ORACLE SQL 组函数【weber出品必属精品】

组函数:对一组数据进行加工,每组数据返回一个值 常用的组函数:count()  avg()  max()   min()  sum()   count()函数  1. count(*) :返回总共的行数,不去除NULL值 2. count(column):返回非NULL行的数量 SQL> select count(*) ,count(sal),count(comm) from emp; COUNT(*) COUNT(SAL) COUNT(COMM) ---------- ---------- -

内外连接、组函数、DDL、DML和TCL

前言 cross join ,是笛卡尔积:nature join 是自然连接. 正文 内外连接 inner join inner join 的inner可以省略. 内连接 在一个表中能够找到在另一个表中与之对应的记录,来组成新的记录显示出来,舍弃表中在另一个表中没有对应记录的记录. 等值连接 一个表中的某个字段是另一个表的外键 例如.emp表和dept表存在多对一的关联关系,由外键字段deptno来维护,即emp表来主动维护这一关系. 非等值连接 between and 来实现非等值连接: se

Oracle组函数、多表查询、集合运算、数据库对象(序列、视图、约束、索引、同义词)等

count组函数:(过滤掉空的字段) select count(address),count(*) from b_user max() avg() min(),sum() select sum(age),max(age),min(age),avg(nvl(age,0)) from b_user 1       260     70      10      37.1428571428571 group by:如果前面定义了该字段名  则groupby必须也写上该字段 select name,pw

Netsuite Formula > Oracle函数列表速查(PL/SQL单行函数和组函数详解).txt

PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 组函数 本文将讨论如何利用单行函数以及使用规则. SQL中的单行函数 SQL和PL/SQL中自带很多类型的函数,有字符.数字.日期.转换.和混合型等多种函数用于处理单行数据,因此这些都可被统称为单行函数.这些函数均可用于SELECT,WHERE.ORDER BY等子句中,例如下面的例子中就包含了TO

SQL 聚集函数(聚组函数)的使用 注意事项

原文地址 http://hi.baidu.com/sdunus/blog/item/333c1a29305041fe99250aad.html 在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚组函数,例如SUM, COUNT, MAX, AVG等.这些函数和其它函数的根本区别就是它们一般作用在多条记录上. SELECT SUM(population) FROM bbc 这里的SUM作用在所有返回记录的population字段上,结果就是该查询只返回一

oracle:数值型函数,日期函数,转换函数,组函数,分组,排序,两表查询连接

--数值型函数 --四舍五入round(x,y)对x保留y为小数 --四舍五入数值 select round(23.225) from dual; --输出结果:24 --四舍五入(小数点后保留1位小数)数值 select round(23.652,1)from dual; --输出结果:23.7 --四舍五入(四舍五入到小数点前1位小数)数值 select round(25.2466,-1)from dual; --输出结果:30 -- 返回x按精度y截取后的值 --未四舍五入的值 selec