我有一个应用程序需要将加密货币值存储到PostgreSQL数据库。应用程序使用任意精度整数,以及我必须存储到数据库的整数。最有效的方法是什么?
为什么任意精度?有两个原因:
我想出的最佳解决方案是将数字转换为blob并将数字存储为原始格式的位。但我希望有一种更适合数据库的更好方法。
编辑:
我需要这种存储方法更好的原因是性能。我不想进入基准和所有这些细节。这就是为什么我要保持简单的问题,否则它会变得复杂。所以问题是,是否有正确的方法来做到这一点。
如果您需要效率但又依赖于准确的值(我同意),那么您应该使用decimal(precision, scale)
预先定义具有特定预设的列或不同表。
如果您的测试显示标准数据类型的性能不够好,您可能需要查看bignum和其他人。