sql server 将字符串第二字符替换为另外一个字符的 方法
updateemp_info_mastersetchn_name=replace(chn_name,'静','可')wherechn_namelike'_静%'这个方式是...
update emp_info_master set chn_name=replace(chn_name,'静','可')
where chn_name like '_静%'
这个方式是有效的,但是有一个问题就是
如果我的emp_info_master表中里有个人名字叫做“李静静”的情况下第三个静字也会被替换掉,请问如何才能只替换第二个“静”字 展开
where chn_name like '_静%'
这个方式是有效的,但是有一个问题就是
如果我的emp_info_master表中里有个人名字叫做“李静静”的情况下第三个静字也会被替换掉,请问如何才能只替换第二个“静”字 展开
3个回答
展开全部
update emp_info_master set chn_name=replace(chn_name,'静','可')where chn_name like '%静%' and chn_name not like '%静静%'
查询条件为:名称中有静字,但不能是静静,这样就满足你的要求了。
查询条件为:名称中有静字,但不能是静静,这样就满足你的要求了。
追问
我的意思是 替换所有第二个字为静的
就是说 如果是叫做李静静 那么 替换后变成 李可静 而不是不替换 有两个静的数据
追答
update emp_info_master set chn_name=replace(chn_name,'静','可')where chn_name not like '%静静%'
update emp_info_master set chn_name=replace(chn_name,'静静','可静')where chn_name like '%静静%'
两段SQL可以实现。
来自:求助得到的回答
展开全部
update emp_info_master set chn_name=stuff(chn_name,2,1,'可')
where chn_name='李静静'
希望能够帮到你;
where chn_name='李静静'
希望能够帮到你;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update emp_info_master set chn_name=stuff(chn_name,2,1,'可')
where chn_name like '_静_'
where chn_name like '_静_'
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询