SQL中数值求平均:为何结果为500?对应数学运算是什么?
SQL 平均结果为500的数学运算逻辑
SQL中的AVG()函数核心计算逻辑是:目标列所有非NULL数值的总和,除以这些数值的数量(非NULL行数)。
拿你的查询结果来说,能算出500的典型场景比如:
- 目标列的有效数值是
0、0、1500:总和为1500,共3个数值,1500÷3=500 - 目标列的有效数值是
500、500、500:总和1500,3个数值,1500÷3=500 - 若存在NULL值(
AVG()会自动忽略NULL),比如数值是NULL、500、500、500:总和1500,3个有效数值,1500÷3=500
本质就是先把所有参与计算的数值加起来,再除以参与计算的数值个数,最终得到结果500。
内容的提问来源于stack exchange,提问作者notAPenguin
相关产品推荐
相关产品推荐

