0

在我的数据库中,一些字段(金额,余额)被分配为浮动值,但现在我遇到了一个问题。如果金额为 1.56,则需要 1.6,然后我使用 Round(amount,2) 更改表仍然显示同样的问题。如果有人知道请帮助我。

4

1 回答 1

2

浮点字段必须声明为 float(some_integer, 1) 以显示您描述的行为。这种声明中的第一个整数告诉 MySQL 总共有多少位是可见的,小数点左边的数字+小数点右边的数字。要在小数点左侧有 3 位数字,在小数点右侧有 2 位数字,您可以将其声明为float(5,2).

就像 Doan Cuong 已经提到的,如果您选择十进制数据类型会更好。

在这里看到它的不同行为。

引用手册:

DECIMAL 和 NUMERIC 类型存储精确的数字数据值。当保持精确的精度很重要时使用这些类型,例如货币数据。

FLOAT 和 DOUBLE 类型表示近似数值数据值。

有关数据类型的更多信息,请在此处阅读更多信息。

于 2013-04-05T07:50:30.350 回答