MySQL:比较具有重要精度的数字是否会影响性能

时间:2016-11-10 16:18:20

标签: mysql

我想知道MySQL是否能更好地比较具有重要精度的数字或者在比较之前对它们进行舍入,因为他们知道比较精度不如比较数字精度重要。

前:

SELECT 0.123456789101112123456789101112 < 0.987654321012345987654321012345  

OR

SELECT ROUND(0.123456789101112123456789101112,2) < ROUND(0.987654321012345987654321012345,2)

1 个答案:

答案 0 :(得分:1)

使用ROUND()的版本显然会出现性能损失。

首先,调用函数总是比不调用函数更昂贵。

其次,可能更重要的是,如果列上有索引,如果在对列进行比较之前对它进行比较,则无法使用它。

但是,获得正确的答案几乎总是比使用最有效的方法更重要。