【发布时间】:2015-04-24 23:32:40
【问题描述】:
我在表中有一个数据类型为 decimal(10,2) 的列,当我尝试更新存储过程中的列时,我失去了 2 位精度。
如果我将字段更新为单个查询,它可以正常工作,但在存储过程中它会失去精度。
例子:
UPDATE table
SET decimal(10,2) column = decimal(10, 2) column / 100
示例:197.50 当更新结果为197.00
谢谢
【问题讨论】:
-
你真的是在除以 100 吗?
-
您使用的是哪个 rdbms?
-
尝试 /100.0 强制进行浮点计算。
-
这适用于哪个 RDBMS?请添加一个标签以指定您使用的是
mysql、postgresql、sql-server、oracle还是db2- 或者完全是其他东西。 -
让我们看看表定义和实际的 UPDATE 语句。您列出的内容给出了至少一种 SQL 的语法错误。
标签: sql stored-procedures decimal precision