繁体   English   中英

在pl / sql中将数字输出[。]更改为[,]

[英]Change number output [.] to [,] in pl/sql

我的功能应该将数字符号从12345.67€更改为12345,67€

 select

        replace(
    to_char(round(

    123456.789

    ,2),'999G999G999G990D'||substr('0000000000',1,2),'nls_numeric_characters=''.,'''),'.',','
    ) || ' €' 

    from dual;

当前结果是:123,456,79€我想要得到的结果:123456,79€

但是我不知道如何。 我的oracle返回格式为123456.79的值,因此这是我计算的原因。 母鹿的人知道该怎么办吗?

例如,ALTER SESSION SET NLS_TERRITORY ='SWEDEN'。 或爱沙尼亚。
数字格式是从NLS_TERRITORY参数的设置派生的,但是可以被NLS_NUMERIC_CHARACTERS参数覆盖。

您应该在会话或查询中设置NLS参数(如果尚未正确设置)。

select to_char(123456.789
              ,'9999990D00L'
              ,'nls_numeric_characters='',.'' nls_currency=''€''')
from dual
select

replace(
to_char(round(

123456.789

,2),'999999999990D'||substr('0000000000',1,2),'nls_numeric_characters=''.,'''),'.',','
) || ' €' 

from dual;   

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM