我正在尝试编写一个删除所有空格的 SQL 查询,这样如果一个字符串只有空格,那么最终的字符串就是''。
我已经尝试过这段代码,但显然它不适用于多个空间:
regexp_replace(:P14_search_text, '( ){1,}', '')
存在:P14_search_text
我要修改的字符串。
有什么帮助吗?
怎么样:
regexp_replace(:P14_search_text, '[[:space:]]*', '');
尝试这个:
Select Replace(:P14_search_text, ' ', '');
我尝试了与@Don 建议的方法相同的方法,它适用于 oracle 10 xe。
select replace(' lkjds d s adkj ', ' ', '') from dual
结果
lkjdsdsadkj
希望这对你有帮助,
SELECT REGEXP_REPLACE(' Any String ','( ){1,}','') "REGEXP_REPLACE" FROM DUAL;
SELECT REGEXP_REPLACE(' ','( ){1,}','') "REGEXP_REPLACE" FROM DUAL;
以下查询在 oracle 中对我有用:
select
:tst_val AS INPUT,
regexp_replace(:tst_val, '[[:space:]]*', '') AS MODIFIED
from
dual
如果此查询对您不起作用,您能告诉我们您得到什么结果吗?