SQL语句 替换某个字段中的某个值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL语句 替换某个字段中的某个值相关的知识,希望对你有一定的参考价值。

SQL语句 替换某个字段中的某个值 例如 表A中 x字段的 值得是 1yy 现在要把1yy更新为1y?语句怎么写?

1、创建测试表,

create table test_replace(id number,  value varchar2(20));

2、插入测试数据

insert into test_replace values(1,'1yy');

insert into test_replace values(2,'1yy');

insert into test_replace values(3,'2xx');

insert into test_replace values(4,'3ss');

insert into test_replace values(5,'4bbb');

3、查询表中所有记录数,select t.*, rowid from test_replace t,

4、编写sql,实现替换功能,select t.*, replace(value,'1yy','1y') value2 from test_replace t,

参考技术A 看你的数据库如果是access就没办法了
sql server的话
update a set x = REPLACE(x,'a','b');

假设:
x中原内容为ababababab
执行后变为为bbbbbbbbbb
参考技术B update A set x=1y where x=1yy

怎么在SQL SERVER 2008数据库中,将某一列字段中的某个值替换为其他的值

参考技术A 用replace啊。核心思想是将',1,'替换成',11,12,13,14,15,16,'。考虑到1可能出现在开头或末尾,将原字符串的开头和末尾都加上逗号。这样就可以统一替换了。替换完毕,再去掉开头和结尾的逗号。

create table v (VHCL_RANGE_CODE varchar(100));
insert into v
select '8,1,3,21,22,9,23,61,51,41' union all
select '8,22,9,23,61,51,41,1,3,21' union all
select '1,21,22,23,3,41,42,43,51,52,61,8,9' union all
select '3,4,5,6,1' --加上这条测试一下1在末尾的情况
--前后各加一个逗号后,进行替换
update v set VHCL_RANGE_CODE=replace(','+VHCL_RANGE_CODE+',',',1,',',11,12,13,14,15,16,');
--去除前后的逗号
update v set VHCL_RANGE_CODE=substring(VHCL_RANGE_CODE,2,len(VHCL_RANGE_CODE)-2)替换后的结果:
参考技术B 你想替换为哪个值
建议:
update
table
set
c
=
replace(c,'1','11,12,13,14,15,16')
where
c='1'

以上是关于SQL语句 替换某个字段中的某个值的主要内容,如果未能解决你的问题,请参考以下文章

sql中更新某个字段中部分空值的语句怎样写?

sql语句查询表中一个字段的值小于另一个字段的值怎么写?

sql按某个字段值顺序排序

如何用sql语句将一个字段的值加1-MS-SQLServer/疑难问题

sql语句更新字段里面的值,比方说 我要去掉某一列里面所有值的最后的一个字母(有空值)

求SQL语句,一个字段中多个ID,如何对他进行对应的值替换?