sql怎么把一个表中字段的部分内容替换成另一个表字段的内容 5
3个回答
展开全部
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起算
2019-01-19
展开全部
这个是进行修改与查询操作,你得先把另一个表字段的内容给查找出来,然后在对要修改的表进行操作,语句就不说了,简单,很简单
追问
那您帮我写下呗 难着不会,会者不难啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update test_tb set field=
(select replace(field,'part',(select field2 from test_tb))
from test_tb)
(select replace(field,'part',(select field2 from test_tb))
from test_tb)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询