Search code examples
sqlmysqldata-migration

Select & Insert across multiple databases with MySQL


I have 2 identical tables in 2 different databases that reside on the same server. What would be the best way to copy data from table to another?


Solution

  • Use:

    INSERT INTO db1.table1
    SELECT *
      FROM db2.table2 t2
     WHERE NOT EXISTS(SELECT NULL
                        FROM db1.table1 t1
                       WHERE t1.col = t2.col)
    

    The exists is simplified, but you left out if there's a primary key/auto_increment to worry about/etc.