select sum(rangeNum) as hope,analyze_id from range_analyze group by analyze_id order by hope desc; 每个 analyze_id 对应 100 条数据,都是小于 0.01 的小数,结果 sum 出来的 hope 都是 67987804 这么离谱的大数,点一下结果中的 67987804 ,又变成了 804 ,前几位不显示了,rangeNum 是 float 类型,没有做长度限制。
但是我单独 sum 一条,select sum(rangeNum)as hope from range_analyze where analyze_id='A';这种,结果是却是对的,用 mysql workbench 执行第一条,结果也是对的
1
mohulai OP 好像知道为什么了,正确的结果是 0.09498471367987804 ,navicat 错误的结果 67987804 是截取了小数点最后八位,不知道为什么要这么设计。
|