【问题标题】:Decimal INT in MySQLMySQL中的十进制INT
【发布时间】:2014-04-20 08:27:54
【问题描述】:

我们目前有一个设置为 INT 的表格行和一个每 60 秒(cron)添加 5000 的值的 php 脚本。我们现在需要包含小数点的能力。

如果我们将 5000 的加法值更改为 5000.19,这是否适用于 INT?还是我们需要将行更改为十进制?

我希望这是有道理的。

细分:

当前设置

起始编号:12500 (INT) 增加金额:+5000(无小数)

我们现在需要它来处理小数:

起始编号:12500 增加金额:+5000.19(带小数)

【问题讨论】:

  • 你知道整数是什么吗?这是一个没有小数的数字。
  • 如果你每 60 秒增加一个固定量...为什么不直接选择开始时间和数量,并在需要时计算 经过的分钟数 * 5000?

标签: php mysql int decimal


【解决方案1】:

您可以将列更改为“text”或“varchar”作为一种懒惰的解决方法,它在大多数情况下都可以正常工作

【讨论】:

    【解决方案2】:

    是的,您需要转换列的数据类型。 INT 列只存储整数。

    alter table my_table modify time_value decimal(18,4);
    

    确保为 decimal 类型选择正确的精度和比例值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-17
      • 1970-01-01
      • 2015-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多