功能格式编号

时间:2013-05-22 00:51:49

标签: sql oracle function plsql formatting

对于oracle,

任何人都可以修复下面的功能让它与“数字(10,2)”一起使用吗?只是这个条件。

我来这里有功能..

CREATE OR REPLACE FUNCTION Fmt_num(N1 in NUMBER)
RETURN CHAR
IS
BEGIN
RETURN TO_CHAR(N1,'FM9,9999.99');
END;
/

我可以将它与SQL语句一起使用,如下所示

SELECT Fmt_num(price) from A;

3 个答案:

答案 0 :(得分:1)

这取决于“作品”的含义以及您想要的输出。我的猜测是你只想更新格式掩码

to_char( n1, 'fm999,999,999.99' )

但是,假设你想要使用硬编码的小数点和分隔符,并且你想要使用美国/欧洲惯例,将数字分成3组,而不是传统的印度代表大型系统号。

答案 1 :(得分:0)

CREATE OR REPLACE FUNCTION Fmt_num(N1 in NUMBER)
RETURN CHAR
IS
BEGIN
RETURN TO_CHAR(N1,'FM99,999,999.99');
END;
/

答案 2 :(得分:0)

如果你真的想要每4位逗号,你可以这样做:

TO_CHAR(N1,'FM9999,9999,9999.99');

但是,我建议您使用区域设置安全版本(G代表分组字符,D代表小数分隔符):

TO_CHAR(N1,'FM9999G9999G9999D99');