基于ID对应更新表

时间:2013-06-13 11:07:31

标签: mysql inner-join multiple-tables

我需要根据id对应关系将数据从一个表(A)复制到另一个表(B),但ID的对应关系实际存储在第三个表(C)中。 所以带有对应关系的表格似乎是

C.A_ID  C.B_ID
1       33
2       56
3       74

我试过像

这样的东西
UPDATE DB.A 
SET DB.A = DB.B
FROM DB.A p
INNER JOIN 
    DB.B p1
INNER JOIN
    DB.C p2

如何插入ID对应?

2 个答案:

答案 0 :(得分:0)

UPDATE A , (select c.id1, b.data from B join C on (B.id2 = C.id2 )) as Foo
SET A.data = Foo.data
WHERE
A.id1 = Foo.id1

答案 1 :(得分:0)

您需要使用select into语句从一个表中选择数据并插入另一个表中。