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;