Postgresql Postgres中十进制和数字的区别是什么?

Postgresql Postgres中十进制和数字的区别是什么?,postgresql,Postgresql,根据前面的一些建议,我正在将数据库中的一列从money改为numeric 查看postgres中的数据类型--我在描述中看不到数字和十进制之间的任何差异 十进制和数字的区别是什么?我有什么理由在数据库中使用数字而不是十进制来表示价格吗?根据手册,它们是相同的 decimal和numeric类型是等效的。这两种类型都是 SQL标准 不同之处在于SQL标准允许不同的行为: 数值必须精确到定义的精度-因此,如果定义4位小数,数据库必须始终存储4位小数 十进制必须至少与定义的一样精确。这意味着数据库实际

根据前面的一些建议,我正在将数据库中的一列从money改为numeric

查看postgres中的数据类型--我在描述中看不到数字和十进制之间的任何差异


十进制和数字的区别是什么?我有什么理由在数据库中使用数字而不是十进制来表示价格吗?

根据手册,它们是相同的

decimal和numeric类型是等效的。这两种类型都是 SQL标准

不同之处在于SQL标准允许不同的行为:

数值必须精确到定义的精度-因此,如果定义4位小数,数据库必须始终存储4位小数

十进制必须至少与定义的一样精确。这意味着数据库实际上可以存储比指定数字更多的数字,因为后台存储有空间容纳额外的数字。这意味着数据库可能存储1.00005而不是1.0000,从而影响未来的计算


根据手册,它们是一样的

decimal和numeric类型是等效的。这两种类型都是 SQL标准

不同之处在于SQL标准允许不同的行为:

数值必须精确到定义的精度-因此,如果定义4位小数,数据库必须始终存储4位小数

十进制必须至少与定义的一样精确。这意味着数据库实际上可以存储比指定数字更多的数字,因为后台存储有空间容纳额外的数字。这意味着数据库可能存储1.00005而不是1.0000,从而影响未来的计算