MYSQL - 将数据从一个表移动到相关的表?

时间:2010-06-22 19:25:55

标签: mysql

我有两个表,结构如下:

table A:
   A_ID    varchar(32) PRIMARY KEY
   field1  varchar(255)
   field2  varchar(255)
   B_ID    varchar(32)

table B:
   B_ID    varchar(32) PRIMARY KEY
   field1  varchar(255)
   field2  varchar(255)

A包含表B的外键(注意1 B可能超过1 A)。我想将表B中的数据插入到匹配表A中(对于表A中的每一行,field1和field2都是空的)。有没有办法完全用MySQL做这个?

2 个答案:

答案 0 :(得分:3)

尝试

UPDATE `table_a` AS a 
INNER JOIN `table_b` AS b ON ( a.`b_id` = b.`id` ) 
SET a.`field1` = b.`field1`, a.`field2` = b.`field2`

答案 1 :(得分:2)

这样的事情怎么样:

UPDATE `table A`, `table B` SET `table A`.field1 = `table B`.field1, `table A`.field2 = `table B`.field2 WHERE `table B`.ID = `table A`.B_ID
编辑:没关系,我被打败了。