【发布时间】:2014-03-01 13:49:46
【问题描述】:
我正在尝试找到正确的 Oracle 格式掩码,以便以某种方式在报告的 Apex 页面上显示数字。 大多数时候这些数字是整数,但有时这些数字可以是浮点数。 假设我有以下三个查询:
查询 1
SELECT TO_CHAR(1, '<Format Mask>', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;
查询 2
SELECT TO_CHAR(0.1, '<Format Mask>', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;
查询 3
SELECT TO_CHAR(0.01, '<Format Mask>', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;
现在我想使用一个格式掩码,它会给我以下结果:
结果 1
1
结果 2
0,1
结果 3
0,01
谁能为我提供正确的格式掩码来实现这一点? 我尝试过像 FM990D999 这样的格式掩码,但它在查询 1 中的 1 后面留下一个逗号。
【问题讨论】:
-
@Ben 是的,问题非常相似,我还没有找到那个问题。但是,给出的答案对我的情况不是很满意,因为我只能在 Apex 中指定格式掩码。否则我将不得不在早期阶段生成字符串,这会破坏 Apex 报告中的排序行为。
-
@BartvanderDrift - 你不能
trim用你的格式掩码得到的字符串? -
这些数字是在报告的同一列中,还是在不同的列中?这是经典报告还是交互式报告?
-
@Alex - 唉,我不能。 Apex 只允许我指定格式掩码。任何额外的字符串操作都必须在 Query 阶段进行,从而破坏报告的排序行为。
标签: sql oracle oracle-apex number-formatting