SQL语句实现数据库表间数据更新与迁移
可以使用如下的SQL语句实现:
UPDATE 表1 SET actual_commission_balance = commission_balance, commission_status = 2 WHERE type = 1 AND status = 3 AND invite_user_id IS NOT NULL;
UPDATE 表2 SET balance = (SELECT actual_commission_balance FROM 表1 WHERE invite_user_id = 表2.id) WHERE 表2.id IN (SELECT invite_user_id FROM 表1 WHERE invite_user_id IS NOT NULL);
其中,第一条SQL语句会先对表1中满足条件的记录进行更新,将'actual_commission_balance'的值修改为'commission_balance',将'commission_status'的值修改为2。
第二条SQL语句则会根据第一条SQL语句中更新的'invite_user_id',将对应的'actual_commission_balance'值输入到表2中对应的'balance'字段中。这里使用了一个子查询来获取'actual_commission_balance'的值,同时使用了IN子句来过滤出需要更新的记录。
原文地址: https://www.cveoy.top/t/topic/lJLY 著作权归作者所有。请勿转载和采集!