兩個不同的資料庫中有兩個相同的表,如何合併到一起?

時間 2021-05-10 01:32:14

1樓:吳疆

方法有很多

將資料庫A中的表t1教小,則將t1匯出成csv檔案,然後匯入資料庫B中;如果t2較小則匯出t2

2. 大資料資料庫都提供database federation的元件,例如postgresql的fdw等,可以直接在兩個庫之間進行查詢

3. 使用ETL工具

2樓:以資料之名

異構資料庫的join或merge操作,可以使用etl工具或者其思想來實現。

所謂ETL,E抽取(Extract,同源或者不同源資料),T轉換(Transform,資料流特定業務邏輯處理),T載入(Load,做好資料流合併,資料流轉換後,寫入目標庫)

具體的工具或者說引擎,離線或者準實時清洗如:datastage,kettle,informatic等,實時資料流join如:flink、spark等

上面的思想都是異構資料來源直接合併資料流的思想。

也可以,先把異構資料來源,抽取到同構資料來源,再做內部sql join也是一種思路。

3樓:劉長元

# 建立資料庫

create

database

db_a

;create

database

db_b

;# 建立表

create

table

db_a.t1

(name

varchar

(255

)null

,value

varchar

(255

)null

);create

table

db_b.t1

(name

varchar

(255

)null

,value

varchar

(255

)null

);# 插入資料

insert

into

db_a.t1

values

("a"

,"1"

),("b"

,"2"

);insert

into

db_b.t1

values

("a"

,"3"

),("c"

,"4"

);# 根據你的需求查詢資料

# 首先把兩個庫的t1表查出來,然後通過union all拼成一張新的表

# 然後直接按name做group, 把value值加一起就好了select

name

,sum

(value

)from

(select

*from

db_a.t1

union

allselect

*from

db_b.t1

)astgroup

byname

;查出來資料以後,插入新的臨時表,把原來的db_a.t1表改名,把臨時把改成t1就好了

關係型資料庫,資料庫表設計,兩個表的連線關係是多對多,連線表的設計除了傳統的設計方案外還有其他設計方案麼?或者說有幾種可能的設計方案。

王璐 你所說的符合正規化的設計肯定是設計的第一步,之後的設計要看業務具體怎麼用這些資料。馬上就能想到的幾點是 未完成的訂單備受關注 已完成的訂單不會有修改。要解決題目中的查詢壓力,簡單的方案是 把未完成單 三月內單 歷史訂單分開儲存。當然對於前端的處理和快取也能有效減少查詢和查詢壓力。 LS的已經回...

兩個人同時操縱資料庫,怎麼處理併發問題?

這個你可以說的更細一點 是兩個人同時在控制台處理還是兩個執行緒同時處理 當然這些你可以都忽略,資料庫會幫你幹這個事情,幫你處理好併發問題的 哈哈,必須強答一波。因為很多年前我在大學時就被此問題困擾過。我當時已經把問題簡化為,兩個使用者同時更新同一條記錄,資料庫它怎麼辦?其實,不是資料庫怎麼辦?核心是...

兩個化學結構相同的分子(比如兩個水分子),是不是完全相同的?

希卡利 看你怎麼定義完全相同吧。如果仔細扣的話,連核外電子的分布都不一樣 概率相同,但是每時每刻電子出現的位置不一樣 所以不會完全相同啦。 抱抱 我想的是,難道每個原子都是一模一樣的麼。我覺得不可能啊。所有的氧原子是一樣的麼,所有的氫原子是一樣的麼?電子的運動不是無序的嗎,所以我覺得,不一樣。 Wi...