一、替换首位
说明:替换首位时,截取首位需要替换的内容,用剪切函数substr(指定字段,1,N)),然后replcae(指定字段,截取的首段字符串,需要替换成的字符串),最后,更新字段内容。
例子:替换指定字段c_yhj_code 前两位字符。
update t_p_aa_etf_zqmap
set c_yhj_code = replace(c_yhj_code,substr(c_yhj_code,1,2),'MP')
where c_yhj_code = 'KO 1380018'
替换前:
替换后:
二、替换中间
说明:从中间某位起,截取一段,然后替换,最后更新,同截取首位类似。
例子:截取第8位起的字符为MK
update t_p_aa_etf_zqmap
set c_yhj_code = replace(c_yhj_code,substr(c_yhj_code,8,2),'MK')
where c_yhj_code = '1380018MP20200720'
替换前:
替换后:
三、替换末尾
说明:替换末尾时,首先找到末尾需要替换的内容,用剪切函数substr(指定字段,length(指定字段)-1,N),length获取字段长度,length-1 表示字段从末尾起,截取N位,N=1,2,3。然后replcae(指定字段,截取的某段字符串,需要替换成的字符串),最后,更新字段内容。
例子:替换字段c_yhj_code末尾最后两位字符。
update t_p_aa_etf_zqmap
set c_yhj_code = replace(c_yhj_code,
substr(c_yhj_code,length(c_yhj_code) - 1,2),
'IB')
where c_yhj_code = '1380018 CY'
替换前
替换后