【问题标题】:Remove all but two trailing zeros AND thousand separator删除除两个尾随零和千位分隔符之外的所有内容
【发布时间】:2021-10-16 21:50:34
【问题描述】:

Postgres 版本 11.7

我正在尝试删除尾随零小数点后两位,同时还在我的结果集中添加千位分隔符。

示例 1 产生所需的结果;删除了所有尾随零:

SELECT to_char(54354.0010, 'FM99 999 999 990.999999'); --> returns 54 354.001

示例 2 说明了问题:

SELECT to_char(54354.0000, 'FM99 999 999 990.999999'); --> returns 54 354.

示例 2中,小数点后的所有零都被删除。
但期望的结果是:

54 354.00

无论是否为零,结果都应始终保留至少两位小数。

【问题讨论】:

    标签: sql postgresql number-formatting


    【解决方案1】:

    这会产生您想要的结果:

    SELECT to_char(54354.0000, 'FM99 999 999 990.009999')
    

    小数点后有两个0,而不是9
    The manual:

    9 位数位置(如果无关紧要可以丢弃)
    0 位数位置(即使无关紧要也不会丢弃)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-25
      • 2021-07-11
      • 1970-01-01
      • 1970-01-01
      • 2020-03-13
      • 1970-01-01
      相关资源
      最近更新 更多