oracle聚合函数avg()注意点

avg:用avg函数进行平均运算时会忽略空值(即最终出现的平均值不对[如果原始数据中存在空值的话]),可以这样子来解决:avg(nvl(comm,0))或者sum(comm)/count(*)
--------------------------------
ps:在oracle机制中使用聚合函数的时候直接忽略了空值,将非空的数据进行运算
∴在sum(comm)和avg(comm)的时候他都是直接把非空的值进行了运算,这虽然没有什么问题,但是在特定情况下所获得的结果并非期望的那样,比如emp表中的comm列,在用聚合函数进行运算的时候,比如avg,他直接把非空的5个数据进行平均运算,把其他的空值数据行直接忽视了
-------------------------------------
把列中的null用"空值"来显示  col comm null '空值'

上述:在使用聚合函数的时候,尤其是使用avg的时候需要特别注意下原始数据中是否存在空值以及实际需求到底是想要获得怎么样的期望值

 

备注:随笔中内容来源于网上资料整理,仅供参考。

原文地址:https://www.cnblogs.com/Alanf/p/7911182.html