m0_69030051 2022-04-01 22:20 采纳率: 100%
浏览 108
已结题

mysql如何将一个表格中的id在一定条件下同步更新到另一个表格的某个列中?

img

各位晚上好,如上图所示,A表的cname=B表的sname,且ud相同的时候,如何将A表的id值同步更新到B表的cid?
试了
UPDATE TbYTZ SET TbYTZ.UserID = ( SELECT UserID FROM TbUser WHERE TbUser.a1=TbYTZ.a2)
结果是cid值都是0,不能获得A表的id值,请各们帮我看看如何解决,谢谢。

  • 写回答

1条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-04-01 23:21
    关注
    update B表 set cid=(select A表.id from A表 where A表.cname=B表.sname and A表.ud=B表.ud) 
    where exists (select 1 from A表 where A表.cname=B表.sname and A表.ud=B表.ud)
    

    需要确保A表中 ud+cname 是唯一的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏

报告相同问题?

问题事件

  • 系统已结题 4月11日
  • 已采纳回答 4月3日
  • 创建了问题 4月1日

悬赏问题

  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 qgcomp混合物线性模型分析的代码出现错误:Model aliasing occurred
  • ¥100 已有python代码,要求做成可执行程序,程序设计内容不多
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助
  • ¥15 STM32控制MAX7219问题求解答
  • ¥20 在本地部署CHATRWKV时遇到了AttributeError: 'str' object has no attribute 'requires_grad'