在您建议的三个中,有一个明显的最佳选择(在注释中加上一个)。
仅使用8个字节,但最大的BIGINT
只有19个十进制数字; 如果除以10 18,则可以代表的最大值是9.22,该范围还不够。
”仅具有15’-17的十进制数字;具有浮点运算的所有已知缺点。
将使用20+字节; 将需要不断的string鈫攊nt转换;无法排序;无法比拟的;不能在数据库中添加;许多缺点。
‘(如果使用MysqL,则将占用12个字节(每9个数字组为4个字节)。这是一个相当合理的存储大小,并且具有足够的范围来支持多达十亿个或小至一个Wei的数量。可以在数据库中对它进行排序,比较,添加,减去等,而不会损失精度。
我会使用DECIMAL(27,18)
(或者DECIMAL(36,18)
如果您需要存储真正的巨大价值)存储加密货币货币价值。