2011-11-08 132 views
1

我尋找做到這一點的最好辦法,以匹配數據...查詢數據與本地數據庫

我想查詢一個遠程數據庫和本地數據庫匹配數據的數據。我的遠程基本上是一個財務記錄數據庫,有個人存款和每個人的唯一編號。本地數據庫具有該人的相同唯一編號。所以我想要做的是爲每個人,sum()的數量,並顯示來自本地數據庫的數據。

我想我會查詢遠程數據庫並將其獲取到一個數組或JSON字符串,並以某種方式循環,並與我的本地數據庫中的數據匹配。

這是否有意義呢?

+0

您是否嘗試過會在你的RDBMS的手冊?其中一些支持「聯合」查詢,其中可以將SQL語句中的單獨數據庫中的表作爲目標。如果您可以提供有關遠程和本地數據庫的詳細信息,它們將有所幫助:它們運行的​​RDBMS系統是什麼? – shimofuri

+0

對不起,我應該提到這一點。我在兩端使用MYSQL數據庫。我不確定這兩個具有聯邦查詢支持的MYSQL我會研究。我一直在想,只要我可以在JSON對象中獲取數據,或者我只需要一種方法將其與本地數據庫中的數據匹配即可。 – senojeel

+0

如果你能在下面實現我的答案,那將是直接的解決方案。無需複雜而昂貴的數據移動和解析! – shimofuri

回答

1

由於兩個服務器上的MySQL運行,假設你已經至少閱讀上的本地數據庫遠程數據庫和管理訪問權限:

  1. 在本地數據庫匹配目標的規範創建一個表表在遠程數據庫。此外,設置這些表選項:ENGINE = FEDERATED CONNECTION ='connection_string'
  2. 您現在可以使用通常的SQL在本地數據庫上運行查詢。

請參閱documentation.