我需要存储一些大数字,一些带有小数点(2 位数)。
我不确定什么类型是正确的。我不明白 DOUBLE 和 FLOAT 之间的区别。什么时候使用 DECIMAL/NUMERIC?希望有人能帮忙。请不要链接到 MySQL 文档。我不明白他们写了什么:-(
首先,如果您想使用小数点,您可以INT
从列表中划掉。
接下来,您需要了解FLOAT
和DOUBLE
相似,因为它们以近似值存储值,但这DOUBLE
是 8 字节,并且FLOAT
是 4 字节。所以对于更大的数字,你会想要DOUBLE
而不是FLOAT
.
现在,选择是在DOUBLE
和DECIMAL
(DECIMAL
可以有 65 位数字)之间。MySQL 告诉我们,对于DOUBLE
列,该值将四舍五入以适合列大小。它还表示,对于DECIMAL
,行为由操作系统决定。它将 ROUND 或截断不适合该列的数字。
我的建议是从上面的描述中选择您认为满足您需求的列类型(DECIMAL
或DOUBLE
),并插入一些测试数据以查看存储行为是否符合您的预期。
此外,如果您对这些列进行任何比较,请确保比较符合您的预期: 2.145<>2.140
归档时间: |
|
查看次数: |
10499 次 |
最近记录: |