【发布时间】:2021-08-04 13:21:09
【问题描述】:
我有一个 varchar(255) 数据类型的文件。当我运行这个查询时:
update sample_tbl
set in_order_real = in_order_real + 21.215541764099030466
where id = 15
它会删除多余的小数。
例如in_order_real 数字是0,当我运行此查询时,它只保留一些小数并在它是一个字符串字段时四舍五入。我该如何解决这个问题?
【问题讨论】:
-
如果你在这个字段中存储小数,为什么不使用小数类型,而不必一直转换为varchar?
-
@Akina 我认为这是因为 mysql 十进制限制。但我提交的是字符串数据类型。为什么mysql看这个像一个十进制数?你有演员的样本吗?
-
@GarethD 因为我不知道小数部分的计数。可能是 8 或 30
-
我不知道小数部分知道它的最大可能值就足够了。例如,“不能超过 40”。
标签: mysql sql-update decimal