MySQL更新替换语法怎么写才对呢

hellsam · 2022-02-24 02:50:24 · 1333 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2022-02-24 02:50:24 的主题,其中的信息可能已经有所发展或是发生改变。

如以上可以直接把aa替换bb
update table set name=replace(name,'aa','bb')

但是如果我想把bb替换为一个查询条件呢
如demo:
update table set name=replace(name,'aa','+(select id from user where name = 'myname' limit 1)+')

l类似这样的语法MYSQL支持吗 我测试多次没有一次成功

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1333 次点击  
加入收藏 微博
6 回复  |  直到 2022-03-03 10:08:25
white_lee
white_lee · #1 · 4年之前

为什么不这样写呢? update table set name='aa' where name ='bb'

rustgo20
rustgo20 · #2 · 4年之前

error or warning?

hellsam
hellsam · #3 · 4年之前

解决了!

0x25w
0x25w · #4 · 4年之前
hellsamhellsam #3 回复

解决了!

现在怎么写的

hellsam
hellsam · #5 · 4年之前
0x25w0x25w #4 回复

#3楼 @hellsam 现在怎么写的

拆开写

xiangbei
xiangbei · #6 · 4年之前

update table a ,(select id from user where name = 'myname' limit 1) b set a.name=replace(a.name,'aa',b.id) where a.id=b.id

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传