首页 > 解决方案 > 如何从 postgresql 中删除货币符号

问题描述

我有一个数据库,我想在其中获取最大值或最小值,但由于 $ 符号它给了我一些错误。我试图从代码库中一一删除它需要时间所以我怎样才能删除标志或者我怎样才能在 postgresql 中从该数据库中找到最大值或最小值

标签: sqlpostgresql

解决方案


正确的长期解决方案是不要将数字存储为字符串。

在修复数据模型之前,作为一种解决方法,您可以使用该replace()函数删除$符号,然后将字符串转换为数字:

replace(the_column, '$', '')::numeric

您可以在该值上应用 min() 和 max()。

如果您有一个“格式化”数字,您可能还想删除分组符号,并且可能需要将小数分隔符替换为 a.以便能够将此字符串转换为正确的数字。

再次:正确的解决方案是将该列转换为numeric


推荐阅读