上面的代码片断都是在两张表之间做关联,但只更新其中一张表的数据。其实,除了更新其中一张表的数据外,方法一、方法二和方法三是可以同时更新两张表的数据,如:
-- 以下代码无实际意义,目的是方便记录 -- 方法一 UPDATE test_a a, test_b b SET b.dept_id = a.dept_id, a.update_time = b.create_time WHERE b.user_id = a.user_id; -- 方法二:(通过 INNER JOIN) UPDATE test_a a INNER JOIN test_b b ON a.user_id = b.user_id SET b.dept_id = a.dept_id, a.update_time = b.create_time; -- 方法三:(通过 LEFT JOIN) UPDATE test_a a LEFT JOIN test_b b ON a.user_id = b.user_id SET b.dept_id = a.dept_id, a.update_time = b.create_time;