MySQL更新主键的同时更新其他表的外键

【前情提要】

要根据条件更新user表中的主键Id,同时也要更新其他表中的外键userId。

【描述】

根据查询出来的条件,去更新tb_user表中的主键Id,同时更新tb_organization_user和tb_tenant_product_user表中的外键userId,
其他都是限制条件。

UPDATE 
tb_user A,
tb_organization_user tu,
tb_tenant_product_user tp 

INNER JOIN (
	SELECT DISTINCT
		tc.user_code,
		tc.id 
	FROM
		tc_allusers tc
	WHERE
		tc.school_no = '6688' 
		AND tc.is_delete = 0 
	) C  
	SET A.id = C.id,
	tu.user_id = C.id,
	tp.user_id = C.id 
WHERE
	A.tenant_id = '9876543266999' 
	AND tu.user_id = A.id 
	AND tp.user_id = A.id 
	and C.user_code=A.user_code

暂时我只想到了这一种可以同时更新主外键的方法,如果有其他更优的方法,欢迎交流

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张_Laura

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值