作者:老爷们白百合开在秋天 | 来源:互联网 | 2017-05-12 14:55
在oracle数据库中我们要替换字符串会用到replace函数,下面来我给大家详细介绍oracle中replace()使用方法,有需要了解的朋友可参考。
在oracle数据库中我们要替换字符串会用到replace函数,下面来我给大家详细介绍oracle中replace()使用方法,有需要了解的朋友可参考。
用法介绍
REPLACE(char, search_string [, replacement_string ] )
char : 等待替换的字符串
search_string : 搜索需要替换的字符串
replacement_string : 替换字符串
如果replacement_string缺省或者为null,那么所有char中出现的search_string 都将被移除
如果search_string为null,那么结果就是char
代码如下 |
|
SELECT REPLACE('JACK and JUE','J','BL') "Changes" FROM DUAL;
|
例1
把中‘2011-10-11’ 的格式,结果导入的数据为 ‘2011/10/11’
代码如下 |
|
update 表1 t set t.列1=replace(( 列1from 表1 a where a.主键列=t.主键列) , '/' , '-' ) 解决了我们问题。
|
replace 字符串级别的代替
如:
代码如下 |
|
SELECT REPLACE('accd','cd','ef') from dual; --> aefd |
translate 字符级别的代替
如:
代码如下 |
|
select translate('acdd','cd','ef') from dual; -->aeff |
分别详解
replace:
语法:REPLACE(char,search_string[,replacement_string])
解释:replace中,每个search_string都被replacement_string所代替
代码如下 |
|
select replace('acdd','cd','ef') from dual; --> aefd
|
如果replacement_string为空或为null,那么所有的search_string都被移除
代码如下 |
|
select replace('acdd','cd','') from dual; --> ad
|
如果search_string 为null,那么就返回原来的char
代码如下 |
|
select replace('acdd','ef') from dual; -->acdd
elect replace('acdd','','') from dual; -->acdd
|
(也是两者都为空的情况)