代码之家  ›  专栏  ›  技术社区  ›  different

在MySQL中,decimal和double之间有什么区别(性能方面)吗?

  •  3
  • different  · 技术社区  · 17 年前

    在我的数据库中,我想存储一个十进制分数。分数可以具有0到10的值,以及介于两者之间的值,例如2.3或9.4。

    我最近了解到 国际性组织 只存储整数,不存储小数。我发现你可以用 两倍的 小数的 ,但我想知道的是,是否有任何区别?

    我目前使用十进制。

    2 回复  |  直到 17 年前
        1
  •  7
  •   David Thibault    17 年前

    通常,小数更精确,双精度更高效。

    使用decimal,您可以设置小数点前后要使用的位数。
    编辑: 您可以设置小数位数 双倍,我的错。

    小数更适用于货币计算等绝对需要精确性的事情。双打更适合你的具体情况,因为分数的准确性并不重要。

    请参阅 overview of numeric types 在MySQL文档中了解更多信息。

        2
  •  1
  •   Tomalak    17 年前

    为什么不使用INT,让分数从0到100?让应用程序显示分数除以10。

    这消除了小数位数/舍入误差的问题。