MySQL数学 - 什么更快,INTEGER或FLOAT?

时间:2010-07-19 22:39:24

标签: mysql performance math floating-point integer

我正在做一些需要大量连接行的查询,并将其中的一些字段添加并相乘。

我知道这有点模糊,但我的问题是哪种数字数据类型对于这些类型的操作来说最快?

FLOAT会比DOUBLE更快,因为DOUBLE是8个字节,而FLOAT是4吗?

INT是否比FLOAT快(即使它们都是4个字节)?

DECIMAL会比FLOAT更快吗?

以下是更多信息:我正在解决的问题允许我选择将“浮动”数字存储为BIGINTEGER ...我可以在插入之前将数字乘以100000。如果BIGINT的数学速度比FLOAT快,我愿意这样做。

感谢。

2 个答案:

答案 0 :(得分:3)

字节大小影响数据检索,而不是基于它的计算。如果需要,索引可以改进这一点,但会减慢UPDATE / INSERT / DELETE语句。

我建议选择反映您将要使用的操作的数据类型。如果您根本不需要精度,则没有理由考虑使用DECIMAL或FLOAT。

答案 1 :(得分:0)

通常,整数运算更快(更准确)。由于我实际上并没有在MySQL中工作,所以我不能肯定 - 但我肯定会赞成整数。