【发布时间】:2016-05-26 20:24:30
【问题描述】:
我一直在思考如何利用Ratio 类型的优势,在像货币计算这样的计算中不丢失精度,在我看来这是一个非常合理的方法。
我的问题是,考虑到我的后端将是 MySQL,将它与 Persistent 一起使用的好方法是什么。我曾考虑将其保存为 varchar,然后将其传递给函数以获取 Ratio,但我认为这可能是更好的方法。
【问题讨论】:
-
您是否打算执行任何需要将比率视为数字的查询? Like SELECT * FROM table WHERE amount > 10
-
@xnyhps,我认为分子/分母方法适用于这种查询。但是,让数据库按该值正确排序结果可能会更困难。
-
@xnyhps 我认为现在我不知道,但如果可以的话会很好,因为想象一下我将使用外部工具来创建报告,比如 Jasper Reports,它对我可以通过多种方式在 SQL 而不是 Java 中进行此类比较
-
如果我使用 varchar,我可以使用程序将它们转换为数字,以进行比较,也可以使用程序进行加减等...你不觉得吗?
-
您也可以考虑使用定点数,这相当于为您的所有值选择一个分母。