SQL问题

chuting1 2017-07-20 09:35:45
两表
A表:
id bh name
1 101 cc
2 102 dd

A表bh唯一

B表:
id bh name
1 101
2 101
3 102


如何更新B表数据name,使结果为
id bh name
1 101 cc
2 101 cc
3 102 dd

我用update B表 set name=(select a.namefrom A表 a,B表 b where a.bh=b.bh),报错了,哪里错了?
...全文
307 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sycateye 2017-07-21
  • 打赏
  • 举报
回复
update C set C.name=A.name from B as C left join A on B. bh=A.bh
chuting1 2017-07-20
  • 打赏
  • 举报
回复
数据库为MYSQL 4.0
小噤 2017-07-20
  • 打赏
  • 举报
回复
没有4.0的版本.
我现在这个版本可以(5.5.33a-MariaDB-log)
不考虑效率不效率.我不懂这个.
update b set b.`name`=(select `name` from a where a.bh=b.bh)

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧