Oracle 没有千位分隔符的SETNLSLANG

Oracle 没有千位分隔符的SETNLSLANG,oracle,Oracle,我想更改nls_数字_字符,这样我就没有任何千字符分隔符,只有逗号作为小数分隔符 TO_CHAR(15000000.05,'99G990D00', 'NLS_NUMERIC_CHARACTERS = '',''') 提供错误“SQL函数中使用的NLS参数字符串无效” 如何执行此操作?我认为您不能使用NLS\u NUMERIC\u字符来抑制组分隔符。这就是格式模型的用途。如果不需要组分隔符,请不要在格式模型中要求它们。所有的NLS\u数字\u字符都将指定组分隔符应该是什么 即使使用CHR(0),

我想更改nls_数字_字符,这样我就没有任何千字符分隔符,只有逗号作为小数分隔符

TO_CHAR(15000000.05,'99G990D00', 'NLS_NUMERIC_CHARACTERS = '',''')
提供错误“SQL函数中使用的NLS参数字符串无效”


如何执行此操作?

我认为您不能使用
NLS\u NUMERIC\u字符来抑制组分隔符。这就是格式模型的用途。如果不需要组分隔符,请不要在格式模型中要求它们。所有的
NLS\u数字\u字符
都将指定组分隔符应该是什么

即使使用
CHR(0)
,如:

select TO_CHAR(15000000.05,'999G999G990D00', 'NLS_NUMERIC_CHARACTERS = ,' || chr(0))
from dual
答案仍然包含chr(0)s(如果将表达式包装在
DUMP()
函数中,您可以看到),如下所示:

select DUMP(TO_CHAR(15000000.05,'999G999G990D00', 'NLS_NUMERIC_CHARACTERS = ,' || chr(0)))
from dual

我认为您不能使用
NLS\u数字\u字符
来抑制组分隔符。这就是格式模型的用途。如果您不需要组分隔符,请不要在格式模型中要求它们。所有
NLS\u数字\u字符
将在要求时指定组分隔符应该是什么

即使使用
CHR(0)
,如:

select TO_CHAR(15000000.05,'999G999G990D00', 'NLS_NUMERIC_CHARACTERS = ,' || chr(0))
from dual
答案仍然包含chr(0)s(如果将表达式包装在
DUMP()
函数中,您可以看到),如下所示:

select DUMP(TO_CHAR(15000000.05,'999G999G990D00', 'NLS_NUMERIC_CHARACTERS = ,' || chr(0)))
from dual

无法定义组分隔符。
NLS\u NUMERIC\u CHARACTERS
设置为“任意两个有效的数字字符”,因此您不能只设置其中一个字符,而将另一个保留为空。(使用空字符仍然使用两个字符,并且不做您想做的事情,如@Matthew所示)

如果您不想在字符串中使用组分隔符,只需从格式模型中忽略它:

select to_char(15000000.05, '999999990D00', 'NLS_NUMERIC_CHARACTERS=,.') from dual;

TO_CHAR(15000
-------------
  15000000,05
我在模型的开头添加了更多的9,因为您的原始模型没有足够的数字占位符来表示值的大小,因此将返回哈希值,而不是任何有用的值


(列宽是格式模型的长度加上允许符号字符的额外空间,字符串被左填充到该宽度-以保持多个值的右对齐。如果愿意,可以通过添加FM修饰符来丢失填充。)

您不能没有定义组分隔符。
NLS\u NUMERIC\u CHARACTERS
设置为“任意两个有效的数字字符”,因此您不能只设置其中一个字符,而将另一个保留为空。(使用空字符仍然使用两个字符,并且不做您想要做的事情,如@Matthew所示)

如果您不想在字符串中使用组分隔符,只需从格式模型中忽略它:

select to_char(15000000.05, '999999990D00', 'NLS_NUMERIC_CHARACTERS=,.') from dual;

TO_CHAR(15000
-------------
  15000000,05
我在模型的开头添加了更多的9,因为您的原始模型没有足够的数字占位符来表示值的大小,因此将返回哈希值,而不是任何有用的值


(列宽是格式模型的长度加上允许符号字符的额外空间,字符串被左填充到该宽度-以保持多个值的右对齐。如果愿意,可以通过添加FM修饰符来丢失填充。)

为什么不将G从格式模型中删除?@AlexPoole老实说,我在某个地方找到了这个示例,尝试修改它,但它不起作用……为什么不将G从格式模型中删除?@AlexPoole老实说,我在某个地方找到了这个示例,尝试修改它,但它不起作用。。。