数据库中avg函数求平均值空值参与统计吗?

先说结论:avg函数求平均值时,空值不参与统计。

示例数据:

with tmp as (
select 1 as id ,100 as value union all 
select 2 as id ,null as value union all 
select 3 as id ,200 as value 
)
select 
avg(value)
,sum(value)
,count(value)
,count(1)
from tmp

执行结果:

`avg(value)`    `sum(value)`    `count(value)`    `count(1)`
150.0000    300    2    3

可以看到:

  • avg函数 空值是不参与计算的。
  • count(字段名) 空值也是不参与的。
  • count(1) 空值是参与计数的。

而 avg实际上等价于:
avg(字段名) = sum(字段名)/count(字段名)

结论:
avg函数求平均值时,空值不参与统计。

posted @   葵花牌、阳光  阅读(193)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
点击右上角即可分享
微信分享提示