我应该使用小数还是浮点数来存储数据库中的比率?特别是在SQL2005中。SQL:你用什么来在数据库中存储比率(百分比)?
2
A
回答
5
这取决于您对准确性的需求。如果您可以容忍来自IEEE存储浮点数的方法的典型错误,那么请使用浮点数,否则,如果您需要精确的表示形式(并且适用于任何不是您将使用的整数的数字在使用百分比的计算中)。
0
取决于你想要它的确切程度。如果你需要1或2位数字,并且你知道最大比率将会在maxint/1000以下,那么我会考虑把这个比率乘以100来存储一个整数。如果您需要确切的数字,您甚至可能希望将分子和分母作为单独的整数存储。否则,坚持浮动或双打。
0
我从来没有在数据库中使用浮点数,也许这是一个古老的技术已解决的习惯,我不是100%确定。
无论是ints,缩放整数还是小数。有时舍入误差似乎不重要,但可能会导致某些值的匹配失败或引入累积误差。
2
这取决于你的比例是什么,真的。
对于利率,例如在银行业务中,我们总是使用小数,其精度和范围由业务决定。如果要计算利率并且结果超出列的精度,那么始终存在业务规则,该规则定义如何对结果进行四舍五入或截断以适合列。
如果您的比例是,例如,一个对象的直径和它的周长之间的比例,我可能会使用浮动。
1
取决于您的应用程序。如果你正在使用浮点数来计算与这个比率有关的所有事情,那么将它作为浮点数来存储可能是有意义的。
但是,除此之外,浮点数通常会带有一点数据库异味。数据库管理员不喜欢他们,因为安装不准确意味着浮点数本质上不一致。这与我们心爱的ACID中的'C'一致性相抵触。
小数和缩放整数至少表现可预测。
相关问题
- 1. 百分比值存储在数据库
- 2. 在SQL中的百分比
- 3. SQL - 计数和百分比
- 4. SQL - 百分比计数
- 5. JS中的数学 - 如何从百分比中获得比率
- 6. 数据库和任意百分比表?
- 7. Hive中用于百分比的数据类型是什么?
- 8. SQL查询 - 在百分比
- 9. SQL中SUM的百分比
- 10. 基于百分比的数值概率
- 11. 数据百分比卡住
- 12. 使用百分比数组来确定概率?
- 13. sql根据百分比分配值
- 14. 为什么内容不在百分比
- 15. 如何增加SQL查询/存储过程中的百分比?
- 16. 表示一个百分比,概率或库存水平
- 17. 设置Gatling根据百分比/比率发送请求?
- 18. PHP MySQL的库存相似百分比
- 19. 我应该用什么类型来表示C#和SQL Server中的百分比?
- 20. SQL完成百分比与COUNT和剩余百分比
- 21. 从数据库计数的数据来计算的百分比计算在PHP
- 22. Spark:列值的百分比百分比
- 23. 在sql中查找百分比值
- 24. 在SQL命令中计算百分比
- 25. 在sql查询中获取百分比
- 26. 倒数百分比
- 27. 请求SQL的百分比
- 28. SQL Server百分比计算
- 29. SQL:获取百分比
- 30. SQL查询百分比