Mysql

合併來自 2 個數據庫的 2 對錶。初學者

  • March 29, 2017

我有兩個 MySql 數據庫 DB1 和 DB2。他們每個人都有表 tbl1 和 tbl2。這兩個表具有相同的主鍵 (Column1)。DB1 中的表有 N 行。我想創建新的數據庫和表,如下所示:

DB1.tbl1.Col1   | DB1.tbl1.Col2 | ... | DB1.tbl1.ColK | DB1.tbl2.Col2 | DB1.tbl2.ColZ
   ...         |    ...        | ... |     ...       |    ...        |      ...   
DB2.tbl1.Col1+N | DB2.tbl1.Col2 | ... | DB2.tbl1.ColK | DB2.tbl2.Col2 | DB2.tbl2.ColZ
   ...         |    ...        | ... |     ...       |    ...        |      ...   

但是,我無法使用 MERGE,因為我需要新表中 DB2.tbl1.Col1 中的索引為DB3.tbl.Col1=DB1.tbl1.Col1, DB2.tbl1.Col1+N.

我現在如何在客戶端(在 Python 上)做到這一點,但是否可以通過伺服器端的一些 MySql 腳本來做到這一點?

謝謝你。

怎麼樣?

create table DB3.tbl1 as
select * from (
 select
   DB1.tbl1.Col1,
   DB1.tbl1.Col2, ...
   DB1.tbl1.ColZ
 from DB1.tbl1
 union all
 select
   DB2.tbl1.Col1 + n
   DB2.tbl1.Col2, ...
   DB2.tbl1.ColZ
 from DB2.tbl1
)

也可以+ n代替+ ( select count(*) from DB1.tbl1 )

引用自:https://dba.stackexchange.com/questions/168474