在Bi-Publisher RTF中更改负数格式

问题描述

我正在执行RTF,希望您能为我提供帮助,如何更改负数格式?

将“(-)”更改为“()”

例如,我有: 821,292.87 -146,983.06 -671.64 503,927.51

我希望通过以下方式看到它们: 821,292.87 (146,983.06) (671.64) 503,927.51

解决方法

您可以使用PR格式模型在尖括号中获取负数:

SQL> select to_char(-146983.06,'999g999g999d99PR','NLS_NUMERIC_CHARACTERS = ''.,''') l 
       from dual;

L
----------------
    <146,983.06>

或者我可以用regexp_replaceto_char做到这一点:

regexp_replace( to_char(-146983.06,'tm9','''),'-(.*)','(\1)' )

示例:

SQL> select regexp_replace( to_char(-146983.06,'(\1)' ) l 
       from dual;

L
------------------------------
(146983.06)