Mysql AVG函数 与手动sum 再除 count求出的平均值不一致问题

PigQuestions PigQuestions 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
使用下列语句:
SELECT

IF (
AVG(`VALUE`) IS NULL,
0,
AVG(`VALUE`)
) AS avgValue
FROM
t_src_rtdb
WHERE
`NAME` = 'CZ3-A999'
AND (
SECONDS > 1351632073
AND SECONDS < 1351718473
)
AND `value` >= 0.50000000
AND `value` <= 5.00000000
得到的平均值为:2.8075127382092875
使用下面的语句:
SELECT count(*) from t_src_rtdb where `NAME` = 'CZ3-A999'' AND (SECONDS >= 1351632073 AND SECONDS < 1351718473) AND `VALUE` >=0.50000000 and `VALUE` <= 5.00000000;
SELECT sum(`VALUE`) from t_src_rtdb where `NAME` = 'CZ3-A999'' AND (SECONDS >= 1351632073 AND SECONDS < 1351718473) AND `VALUE` >=0.50000000 and `VALUE` <= 5.00000000;

得到数据分别为:
1440,4042.703461289406 两数相除等于:2.80743296 小数点4位以后的数字完全不一样了。
这是为什么呢?哪个算法是最准确的?


...全文

相关推荐

使用MySQL中的AVG函数求平均值的教程

主要介绍了使用MySQL中的AVG函数求平均值的教程,是Python入门学习中的基础知识,需要的朋友可以参考下

weixin_38716563

MySQL 分组查询和聚合函数

概述 相信我们经常会遇到这样的场景:想要了解双十一天猫购买化妆品的人员中平均消费额度是多少(这可能有利于对商品价格区间的定位);或者不同年龄段的化妆品消费占比是多少(这可能有助于对商品备货量的预估)。 这个时候就要用到分组查询,分组查询的目的是为了把数据分成多个逻辑组(购买化妆品的人员是一个组,不同年龄段购买化妆品的人员也是组),并对每个组进行聚合计算的过程:。 分组查询的语法格式如下: select cname, group_fun,... from tname [where condition] group by group_expression [having group_con

weixin_38645266

详细解读MySQL中COUNT函数的用法

主要介绍了详细解读MySQL中COUNT函数的用法,是MySQL入门学习中的基础知识,需要的朋友可以参考下

weixin_38500607

Mysql中的count()与sum()区别详细介绍

本文将介绍Mysql中的count()与sum()区别,需要的朋友可以参考下

weixin_38711369

MySQL 常用函数总结

前言: MySQL数据库中提供了很丰富的函数,比如我们常用的聚合函数,日期及字符串处理函数等。SELECT语句及其条件表达式都可以使用这些函数,函数可以帮助用户更加方便的处理表中的数据,使MySQL数据库的功能更加强大。本篇文章主要为大家介绍几类常用函数的用法。 1.聚合函数 聚合函数是平时比较常用的一类函数,这里列举如下: COUNT(col)   统计查询结果的行数 MIN(col)   查询指定列的最小值 MAX(col)   查询指定列的最大值 SUM(col)   求和,返回指定列的总和 AVG(col)   求平均值,返回指定列数据的平均值 2.数值型函数 数

weixin_38632146
评论 5
收藏 已收藏
分享
返回顶部
PigQuestions
MySQL 57,062 成员 56,759 内容