mysql 的替换函数

SQL语句:
update userinfo set remark = replace(remark,'1','9'),reserved1 = replace(reserved1,'4','9')


解释:该sql意思是,把userinfo表中的remark字段中1替换为9,reserved1中的4替换为9
[mysql]replace的用法(替换某字段部分内容)
[mysql]replace的用法

1.replace into
replace into table (id,name) values('1','aa'),('2','bb')

此语句的作用是向表table中插入两条记录。如果主键id为1或2不存在就相当于
insert into table (id,name) values('1','aa'),('2','bb')
如果存在相同的值则不会插入数据

2.replace(object,search,replace)
把object中出现search的全部替换为replace
select replace('www.163.com','w','Ww')

--->WwWwWw.163.com

例:把表table中的name字段中的aa替换为bb
update table set name=replace(name,'aa','bb')

3.UPDATE更新一个字段中的的部分内容

现在有一条记录的字段是“abcdefg",现在我只想将该字段中的c改为C,update语句应该怎么写
update 表名 set 字段1 = replace(字段1,'c','C')

=====================================================

另一种方式:RPAD(字段,长度,目标字符)
select RPAD(msisdn, 16, 'F')msisdn, RPAD(shortnum, 16, 'F')shortnum,
RPAD(forwardnum, 16, 'F')forwardnum, username from h_numdata

原始数据:
8613600290008 6101 18600290008 sunnan
结果:
8613600290008FFF 6101FFFFFFFFFFFF 18600290008FFFFF sunnan

猜你喜欢

转载自zengyouyuan.iteye.com/blog/1853034