Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 删除字符串中的所有空白_Sql_Oracle_Removing Whitespace - Fatal编程技术网

Sql 删除字符串中的所有空白

Sql 删除字符串中的所有空白,sql,oracle,removing-whitespace,Sql,Oracle,Removing Whitespace,我必须删除字符串'5000000,5'到'5000000,5'中的所有空格 我试过下面的3个,但不起作用 select replace('5 000 000,5',' ','') from dual; select regexp_replace('5 000 000,5', '[[:space:]]*','') from dual; select regexp_replace('5 000 000,5', ' ','') from dual; 或者任何人知道如何将字符串“5 000 000,

我必须删除字符串
'5000000,5'到'5000000,5'中的所有空格

我试过下面的3个,但不起作用

select replace('5 000 000,5',' ','') from dual; 
select regexp_replace('5 000 000,5', '[[:space:]]*','') from dual;
select regexp_replace('5 000 000,5', ' ','') from dual;
或者任何人知道如何将字符串“5 000 000,5”转换为数字,因为转换数字失败。
谢谢

您可以尝试删除任何非数字字符,如逗号(


我认为问题在于你的NLS\u数字\u字符,应该可以

select to_number('5 000 000,5', '9G999G999D0', 'NLS_NUMERIC_CHARACTERS = '', ''')
from dual
  • 使用
    REGEXP\u替换
    空格
  • 从dual:

  • 使用
    替换

  • 从dual中选择REPLACE('your_value',chr(32),''):

    结果是什么:从dual中选择REPLACE('5000,5','');您只需稍微调整一下查询即可获得正确的输出。看我的答案。我想你有打字错误。您有
    'chr(32)
    。你的意思不是说
    'chr(32)
    ,而是说
    chr(32)
    select to_number('5 000 000,5', '9G999G999D0', 'NLS_NUMERIC_CHARACTERS = '', ''')
    from dual