Oracle组函数通过nvl对Null进行忽略

进入scott账号,

先看看emp表的数据:

 

 

执行如下语句:

select sum(comm),count(*),avg(comm) from emp;

执行结果如下:

 

 原始表中有14条数据,结果看见avg(comm)只对非NULL的数据进行平均操作,那是因为oracle的组函数不会将null的数据进行忽略,如果需要实现对14个人取平均怎么办?

只需要对comm进行nvl操作,将null转换为0,那么组函数就能将这些null数据纳入统计范围了:

SQL> select sum(comm),count(*),avg(nvl(comm,0)) from emp;

posted @ 2021-06-04 11:24  疯狗强尼  阅读(228)  评论(0编辑  收藏  举报