如何将db1中table1的记录复制到db2中的table2

时间:2014-01-17 07:14:33

标签: mysql insert copy

INSERT INTO table2
SELECT * FROM table1;

以上是将一切从table1复制到table2的简单方法。

但是我有几个问题,

  1. 这两个表位于两个不同的数据库中
  2. 我不想复制所有内容,只是复制table1中的额外记录
  3. 例如。

    Table 1
    -----------
    id | name | age
    
    1 | Mike | 30
    
    2 | Ross | 28
    
    
    Table 2
    -----------
    id | name | age
    
    1 | Mike | 30
    

    现在我只想将id为2的行复制到table2上,因为第1行已经存在。

    P.S。有没有办法可以修改年龄(例如,将年龄乘以1.5)来改变table2中的记录?

2 个答案:

答案 0 :(得分:0)

将数据从一个表格复制到另一个表格:

 INSERT INTO TABLE2 (COL1, COL2, COL3) SELECT COL1, COL4, COL7 FROM TABLE1To copy data from one database to another :



USE `old_database`;

 INSERT INTO `new_database`.`new_table`(`column1`,`column2`,`column3`)

 SELECT `old_table`.`column2`, `old_table`.`column3`, `old_table`.`column5`

 FROM `old_table

答案 1 :(得分:0)

对于你的例子:

INSERT INTO Table2 (id, name,age)

SELECT Table1.Id,Table1.name,Table1.age FROM Table1
LEFT JOIN Table2 ON (Table1.id=Table2.id)
WHERE Table2.id IS NULL

如果您需要在插入过程中修改age字段,请在SELECT列表中将age更改为age*1.5