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

使用MySQL跨多个数据库选择和插入

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

    我在同一服务器上的两个不同数据库中有两个相同的表。将数据从表复制到另一个表的最佳方法是什么?

    2 回复  |  直到 10 年前
        1
  •  30
  •   OMG Ponies    14 年前

    用途:

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

    exists被简化了,但是如果有一个主键/auto-increment需要担心/etc,那么就省略了。

        2
  •  3
  •   Danny Beckett    10 年前

    只需稍微阐述一下OMG小马的答案,您就可以使用 任何 WHERE 条款,就像这样:

    INSERT INTO db1.tablename
    SELECT *
    FROM db2.tablename src
    WHERE src.lastlogin >= '2013-10-31 07:00:00'