mysql浮点数据类型在小数点后6位舍入值

时间:2011-12-28 13:53:00

标签: mysql floating-point rounding type-conversion

我有一个表(比如 table1 ),其中一个数据类型为float(比如 field1 )。此字段中的值都是唯一的,最多8个小数位。

我在这张桌子上执行了以下查询:

SELECT COUNT(*) FROM table1;

结果是查询的总记录数:5179

SELECT COUNT(DISTINCT(field1)) FROM table1;

结果再次与总记录的结果相同:5179

以上两个结果显示字段“ field1 ”中的值是唯一的。

但是当我在这张桌子上运行以下查询时:

SELECT * FROM table1;

并且

SELECT field1 FROM table1;

两个查询都会为结果提供 field1 中的值,并将其缩小到5位小数。其中显示大多数值相同。

这是因为数据类型 float

那么为什么DISTINCT()函数获取实际存储的值而不是舍入。

编辑:

四舍五入的值仅为> 1. for< 0值,它完美无缺。

0 个答案:

没有答案