sql怎么把一个表中字段的部分内容替换成另一个表字段的内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql怎么把一个表中字段的部分内容替换成另一个表字段的内容相关的知识,希望对你有一定的参考价值。

mysql可以用以下方法

-- tableb 通过 aid 关联tablea 的id,把tableb的fielda字段写入tablea的fielda字段
UPDATE tablea SET fielda = (select fielda from tableb where tablea.id=tableb.aid)

-- 关联方式一样,把tablea中fielda的字段中的特定字符串替换成tableb中指定字段的值
update tablea set fielda = REPLACE(fielda,'[价格]',
(select price from tableb where tablea.id=tableb.aid)
)

sql server就不能一条语句更新了,要做存储过程来处理

追问

大神 这个有点高深看不懂 我简单点叙述下 我想把A表的a字段的前18位替换成B表b字段的内容,条件是 A表的ID =B表的ID

追答UPDATE A SET a = concat((
select substr(b,1,18)
 from B where A.id=B.id
 ),substr(a,19))

concat 为连接字符串函数 

substr为字符串截取函数,位置从1起算

参考技术A 这个是进行修改与查询操作,你得先把另一个表字段的内容给查找出来,然后在对要修改的表进行操作,语句就不说了,简单,很简单追问

那您帮我写下呗 难着不会,会者不难啊

参考技术B update test_tb set field=
(select replace(field,'part',(select field2 from test_tb))
from test_tb)

以上是关于sql怎么把一个表中字段的部分内容替换成另一个表字段的内容的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver 怎么将一个字段中61,62逗号隔开的的多个数据转变成另一张表中一个字段对应的多个数据

mssql,让某字段里的 某字符替换成另一字符

sql 表中一个字段含有大量的中文字符,怎么替换掉

sql怎么把一个表的一列替换到对应的另一个表中对应的列?

怎么用word文档把一篇文章内的原人名替换成另一个名字(除了复制粘贴有没有更快捷的方法)

求sql部分字符替换语句