postgresql to_char 德语格式的整数

Posted

技术标签:

【中文标题】postgresql to_char 德语格式的整数【英文标题】:postgresql to_char an integer with German format 【发布时间】:2017-08-31 07:21:00 【问题描述】:

我希望格式化一个浮点数,以便它以下列方式显示:

999.999.990,00

我目前正在使用to_char 函数:

to_char(SUM(amount::float)/100, '999G999G990D00')

但是,这种格式显示的是逗号而不是点。这就是德国的标准。

当我将G(用于表示逗号)更改为D(用于表示点)时,出现以下错误:

psycopg2.ProgrammingError: 多个小数点

我正在使用 Python 2.7 运行 PostgreSQL 和 Psycopg2。

有什么想法可以完成这个替换吗?

谢谢

【问题讨论】:

【参考方案1】:

你可以试试下面的

TO_CHAR(SUM(amount::float)/100,'FM99G999G990D00L')

它应该会给你以下结果

55.123.854.547,10
3.123,58
-1.257.487,90

【讨论】:

以上是关于postgresql to_char 德语格式的整数的主要内容,如果未能解决你的问题,请参考以下文章

[PostgreSQL]PostgreSQL数据类型格式化函数——字符串和数值间的转换

Presto - 如何像 postgresql 一样替代 to_char?

Postgresql to_char 将字符添加到日期

Postgresql/Greenplum中将数字转换为字符串TO_CHAR函数前面会多出一个空格

在 PostgreSQL 上设置默认日期格式

如何将 bigint 字段格式化为 Postgresql 中的日期?