create table test1
(
a varchar2(60),
b varchar2(60)
)
select * from test1
insert into test1 values ( 'abcdef ', 'abcdef ' )
update test1 set a = substr(a,1,1) || substr( a,length(a) - 1 ,1 ) || substr ( a,3,length(a) -4 ) || substr( a,2,1 ) || substr ( a, length ( a ),1 )
select * from test1
例如:表有一个字段,值为 左1 左2 右1 右2
比如想更新左2,右2 为 左3 右3 ------------------------------------ 如果是这样: name ------ 左1 左2 右1 右2 那么: update tt set name=substr(name,1,1) || '3 ' where name in( '左2 ', '右2 '); 如果是这样 name ------ 左1 左2 右1 右2 那么: update tt set name=replace(replace(name, '左2 ', '左3 '), '右2 ', '右3 '); |
例如:表有一个字段,值为 左1 左2 右1 右2
比如想更新左2,右2 为 左3 右3 ------------------------------------ 如果是这样: name ------ 左1 左2 右1 右2 那么: update tt set name=substr(name,1,1) || '3 ' where name in( '左2 ', '右2 '); 如果是这样 name ------ 左1 左2 右1 右2 那么: update tt set name=replace(replace(name, '左2 ', '左3 '), '右2 ', '右3 '); |
例如:表有一个字段,值为 左1 左2 右1 右2
比如想更新左2,右2 为 左3 右3 ------------------------------------ 如果是这样: name ------ 左1 左2 右1 右2 那么: update tt set name=substr(name,1,1) || '3 ' where name in( '左2 ', '右2 '); 如果是这样 name ------ 左1 左2 右1 右2 那么: update tt set name=replace(replace(name, '左2 ', '左3 '), '右2 ', '右3 '); |
例如:表有一个字段,值为 左1 左2 右1 右2
比如想更新左2,右2 为 左3 右3 ------------------------------------ 如果是这样: name ------ 左1 左2 右1 右2 那么: update tt set name=substr(name,1,1) || '3 ' where name in( '左2 ', '右2 '); 如果是这样 name ------ 左1 左2 右1 右2 那么: update tt set name=replace(replace(name, '左2 ', '左3 '), '右2 ', '右3 '); |
例如:表有一个字段,值为 左1 左2 右1 右2
比如想更新左2,右2 为 左3 右3
------------------------------------
如果是这样:
name
------
左1
左2
右1
右2
那么: update tt set name=substr(name,1,1) || '3 ' where name in( '左2 ', '右2 ');
如果是这样
name
------
左1 左2 右1 右2
那么: update tt set name=replace(replace(name, '左2 ', '左3 '), '右2 ', '右3 ');
update t1 set 字段名=replace(字段名,'@sina.cn','@126.com') where 字段名 like '%@sina.cn%'