SQL计算均值遇到NULL
Posted 小基基o_O
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL计算均值遇到NULL相关的知识,希望对你有一定的参考价值。
文章目录
当数值列中含有NULL,将不被计算
如果业务需求要把NULL行计算入内
方案1:把NULL转0
把NULL转为0
SELECT AVG(NVL(sales,0))
FROM 销售表
GROUP BY 维度
方案2:先求和,再除以 权数
如下图:有时补0比较麻烦(因为需要联时间维度表)
SELECT AVG(NVL(sales,0))
FROM 时间维度表
LEFT JOIN 销售表 时间维度表.week=销售表.week
GROUP BY week,维度
但,如果知道 权数,就可以 先求和 再除以权数
SELECT SUM(sales)/3
FROM 表
GROUP BY week,维度
以上是关于SQL计算均值遇到NULL的主要内容,如果未能解决你的问题,请参考以下文章