sql怎么批量替换字段里的字符串的?

updatetable[表名]setFields[字段名]=replace(Fields[字段名],'被替换原内容','要替换成的内容');看到网上用这个语句做替换。字段... update table[表名] set Fields[字段名]=replace(Fields[字段名],'被替换原内容','要替换成的内容'); 看到网上用这个语句做替换。
字段第一个数据里包含“aaaaxxxbbb”,第二个数据包含的是“aaaaybbb”,第三个数据包含的是“aaaamtbbb”......,我只要替换包含'aaaa*bbb',字段里其他的内容不变的,而且其他的内容也是不一样的。update table[表名] set Fields[字段名]=replace(Fields[字段名],'aaa*bbb','要替换成的内容');结果出错,这样的情况能批量替换吗?
不明白,晕。
第一个数据里包含“aaaaxxxbbb”,这串字符替换成A
第二个数据包含的是“aaaaybbb”,这串字符替换成A
第三个数据包含的是“aaaamtbbb”,这串字符替换成A
而且要字段中其他字符串保持不变。
要替换的是这样的字符串,不是字段所有内容,这样指定replace(字段名,'aaaa','cccc')where 字段名 like 'aaa*bbb' ,是不是把包含aaa*bbb的所有字段内容换成一个固定的了?
展开
 我来答
可以叫我表哥
推荐于2017-09-16 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
采纳数:25897 获赞数:1464974
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。

向TA提问 私信TA
展开全部

方法一:
varchar和nvarchar类型是支持replace,所以如果你的text不超过8000可以先转换成前面两种类型再使用replace 替换 text ntext 数据类型字段的语句 。

update 表名 set 字段名=replace(cast(与前面一样的字段名 as varchar(8000)) ,'原本内容','想要替换成什么')

方法二:

update [表名] set 字段名 = replace(与前面一样的字段名,'原本内容','想要替换成什么')
badkano
推荐于2018-12-04 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144777 获赞数:885363
团长

向TA提问 私信TA
展开全部
估计你是没理解replace的意思

譬如你举例的这几个
update 表名 set 字段名=replace(字段名,'aaaa','cccc');

这样以后
aaaaxxxbbb 变成 ccccxxxbbb
aaaamtbbb 变成 ccccmtbbb

替换的是里边的aaa

你那么写不知道你要改什么,如果你只要改aaa*bbb的那种可以在后边加where条件

update 表名 set 字段名=replace(字段名,'aaaa','cccc') where 字段名 like 'aaa*bbb'

当然,这个模糊查询是access里的,如果是sqlserver或oracle等,那个*是要替换成%的

----补充----
按你说的意思
access:
update 表名 set 字段名='A' where 字段名 like 'aaa*bbb'

sqlserver或oracle:
update 表名 set 字段名='A' where 字段名 like 'aaa%bbb'
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jyl_19
2010-11-05 · TA获得超过1002个赞
知道小有建树答主
回答量:708
采纳率:0%
帮助的人:1043万
展开全部
update [表名] set [字段名]=stuff([字段名],charindex('aaaa',[字段名],0),charindex('bbb',[字段名],0)-charindex('aaaa',[字段名],0)-4+7,'A'),
where [字段名] like '%aaaa%bbb%'

就是用charindex取得'aaaa','bbb'的位置,计算需要替换字符串的长度,然后用stuff函数替换.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ppfkue
2010-11-05 · TA获得超过210个赞
知道小有建树答主
回答量:184
采纳率:100%
帮助的人:208万
展开全部
你那样肯定不行。
update table[表名] set Fields[字段名]='要替换成的内容' where Fields[字段名] like 'aaa%bbb'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式