假设有三张表A,B,C
现在要把C表中的一列数据更新到A表中,假设要把C表中的id更新到A表中,那么就可以这样写:
UPDATE A A
INNER JOIN B ON A.xxx = B.xxx
INNER JOIN C ON B.xxx= C.xxx
SET A.id = C.id
其中,inner join中可以加限制条件。也可以用left join等等。
针对mysql,set必须要写在最后。
另外,如果数据量很大,联表更新可能会报safe的错误。可能需要另行解决。
假设有三张表A,B,C
现在要把C表中的一列数据更新到A表中,假设要把C表中的id更新到A表中,那么就可以这样写:
UPDATE A A
INNER JOIN B ON A.xxx = B.xxx
INNER JOIN C ON B.xxx= C.xxx
SET A.id = C.id
其中,inner join中可以加限制条件。也可以用left join等等。
针对mysql,set必须要写在最后。
另外,如果数据量很大,联表更新可能会报safe的错误。可能需要另行解决。
转载于:https://www.cnblogs.com/sjw9507/p/7891351.html