报错信息
出现情况:mysql两张表联表更新,一张表的数据赋值给另一张表
场景
DRSD的建表结构是分库分表的,将A表数据更新到B
分库分表两张表where条件后⾯,需要分库键相等,⽬前drds⽀持这种情况。
A表数据![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/c2dfe383c57b1d0ace859636f0709c74.png)
B表数据
综上
两张表都使用了mamager_unit_id和member_id(id)进行分库分表,所以,where条件后,也要加上分库分表键才行
所以,最终的sql语句为
update member,member_activity_record
set member_activity_record.member_code= member.code
where member_activity_record.member_id = member.id
and member_activity_record.manage_unit_uuid=member.manage_unit_uuid