文章详情

sql批量替换字段中的字符

2013/2/14 21:06:51    小编:胡金金个人网站

估计你是没理解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\'

个人资讯推荐