2015-01-07 35 views

回答

2

使用下面的查詢。

INSERT INTO db2.`tab2` (`id`, `user_name`, `password`, `is_active`) SELECT `user_id`, `name`, `pass`, `active` FROM db1.`tab1`; 

正如你可以看到列名是兩個表中不同

所以你不得不提一下table2的哪一列,你想要插入來自table1的哪一列數據。

+0

感謝您的回答。有沒有工具或SQL機制來做到這一點?因爲我有超過10GB的數據。上述查詢將需要更多時間才能完成。 – phpcoder

+0

我不知道任何可以做得更快的工具。有像Talend這樣的各種ETL工具,您可以將一個數據庫的字段映射到其他數據庫數據庫字段,然後運行它。 – Surya

+0

謝謝。我將立即檢查該工具 – phpcoder

1

您必須添加字段僅要以下MySQL查詢:

INSERT INTO table_name1(fields_you_want) 
SELECT fields_you_want FROM table_name2 

例:

INSERT INTO table2 (col1, col2, col3) 
SELECT column_1, column_2, column_3 
FROM table1