求替换部分行中某列的某些字符
例如表A中有productName列,我需要把其中productName列中'ABC'开头的列中的‘ABC’替换成‘DEF’.
例如:
ABC001
ABC003
ABC004
QSF002
QBQ005
ABC005
我使用update a set productName='DEF'+SUBSTRING(productName,4,6) where productName like 'ABC%'
但是出错
------解决方案--------------------update a
set productName=stuff(productName,1,3,'DEF')
where productName like 'ABC%
------解决方案--------------------用replace函数可以啊:
create table t1
(
col varchar(10)
)
insert into t1
select 'ABC001' union all
select 'ABC003' union all
select 'ABC004' union all
select 'QSF002' union all
select 'QBQ005' union all
select 'ABC005'
select * from t1
update t1
set col=REPLACE(col,'ABC','DEF')
---------------------------------
DEF001
DEF003
DEF004
QSF002
QBQ005
DEF005