代码之家  ›  专栏  ›  技术社区  ›  GSto

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

  •  4
  • GSto  · 技术社区  · 14 年前

    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的外键(请注意,1b可能有多个A)。我想将表B中的数据插入到它的匹配表A中(表A中的每一行的field1和field2都是空的)。有没有一种方法可以完全用MySQL来实现这一点?

    2 回复  |  直到 14 年前
        1
  •  3
  •   Eric Petroelje    14 年前

    尝试

    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`
    
        2
  •  2
  •   user269597 user269597    14 年前

    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
    

    编辑:没关系,我被打败了。