货币类型:删除没有类型转换的货币符号

问题描述 投票:0回答:2

我在Postgres表中使用MONEY类型作为货币数据。当我选择数据时,postgres根据系统的lc_monetary设置格式化值。

我想在不使用显式类型转换的情况下摆脱查询结果中的货币符号(我当前正在使用Laravel的查询构建器。类型转换将需要原始查询)。

有没有办法设置lc_monetary配置设置,以便查询结果中的货币值的格式完全像2位精度的简单浮点数,没有千位分隔符(这样我就可以在我的PHP代码中将它用作字符串/浮点数)?

postgresql postgresql-9.4
2个回答
2
投票

我谈过的大多数人都建议不要使用这种钱。通常情况下,MONEY类型会通过本地实现将输出作为字符串输出,因为LC_MONETARY格式化。大多数人(包括我自己)建议您使用NUMERIC作为货币价值。

您还提到将您的货币值放在浮动中。计算机上的浮动自然会出现舍入错误,并且可能导致金额问题,所以要小心。

在Python中,当我们需要对钱进行数学运算时,我们使用十进制类,我假设PHP有类似的东西。


0
投票

选择money_column / 1 :: money safe ...

根据文件,按金额划分的结果是双精度....(货币取消)。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.