【发布时间】:2016-09-03 13:52:15
【问题描述】:
我目前正在使用decimal 来存储价格数据(将 4.2 美元存储为 4.20),但比较相等性似乎有些困难,即需要计算两个数字之间的差异(abs(number1 - number 2) < 0.01)而不是使用 @ 987654323@
所以我想知道将价格存储为整数是否会更好,例如将 $4.2 存储为 420。
谢谢。
【问题讨论】:
-
我认为 MySQL 比较十进制数没有问题。这可能发生在您的编程语言中,并且只有当您将它们转换为浮点时。不要那样做。如果您没有可用的 BigDecimal 之类的东西,请考虑使用
select price*100来避免这种情况。