update table_name set table_name.column_name = replace(table_name.column_name,'str1','str2');
其中str1是待替换的内容
str2 是替换后的内容;
update table_name set table_name.column_name = replace(table_name.column_name,'str1','str2');其中str1是待替换的内容str2 是替换后的内容;
Oracle
:一次性
替换
某
列
中
的所有值场景引入
Oracle
/ PLSQL:
REPLACE
函数
适用版本示例查询更新
假设,我们需要将原 FULL_CODE
列
中
的值:
FULL_CODE
----------
TREE.ANLYS
TREE.LOG_MGT
TREE.LOG_MGT.ERR_LOG
TREE.LOG_MGT.OPS_LOG
TREE.SYS_MGT
TREE...
/*update SQL:执行一个语句把字段
中
%
替换
成''*/
update web_traffic_data_raw set ubi_bounce_rate=
replace
(ubi_bounce_rate,'%','') where web_id=1811
commit;
/*先把%去掉然后除以100再转化成char类型*/
update web_traffic_data_...
```sql
regexp_
replace
(source_string, pattern,
replace
_string[, start_position[, occurrence[, match_parameter]]])
其
中
,`source_string` 是要进行
替换
操作的字符串;`pattern` 是要匹配的正则表达式;`
replace
_string` 是
替换
后的字符串;`start_position` 是要进行匹配的起始位置,可选参数,默认为 1;`occurrence` 表示从起始位置开始要
替换
的次数,可选参数,默认为 0(表示全部
替换
);`match_parameter` 表示匹配参数,可选参数,用于指定匹配模式。
例如,要将字符串
中
的所有数字
替换
为 `#` 号,可以这样写:
```sql
SELECT regexp_
replace
('abc123def456ghi789', '\d+', '#') FROM dual;
输出结果为:
abc#def#ghi#
在上面的例子
中
,`'\d+'` 是一个正则表达式,用于匹配字符串
中
的数字,`'#'` 是
替换
后的字符串。