如何在sql中选择字符串9999999为99 999 99?

时间:2013-11-19 09:18:55

标签: sql oracle

如何在sql中使用select命令选择字符串9999999为99 999 99? 我尝试使用to_charto_number函数解决问题,但无法获得结果。

2 个答案:

答案 0 :(得分:4)

不确定您在做什么,但如果您只想以这种方式提供数字,请使用TO_CHAR使用特定nls_numeric_charactersG格式的掩码:

SELECT TO_CHAR('9999999', '999G999G99', 'nls_numeric_characters='', '' ') AS val
FROM dual;
VAL        
------------
  99 999 99 

GGroup separator,由nls_numeric_characters会话设置中的第二个字符指定(第一个是小数点分隔符)。您也可以使用ALTER SESSION

更改它
ALTER SESSION SET nls_numeric_characters = ", ";

> session SET altered.

SELECT TO_CHAR('9999999', '999G999G99') AS val FROM dual;
VAL        
------------
  99 999 99

答案 1 :(得分:-1)

declare @value varchar(30)= '9999999'
declare @value1 varchar(30)
set @value1=  convert(varchar(30),cast(@value as money),1)
select REPLACE (@value1,',',' ')