首页 > 解决方案 > 如何在两个不同的服务器(python)中查询两个表?

问题描述

我遇到了以下问题:

我在单独的表中有两个不同的服务器:带有表“A”的 Oracle 和带有表“B”的 PostgreSQL。

我正在尝试通过python制作一个程序,它将这两个表连接起来并将结果写入csv文件。

最好的方法是什么?(将表从一个数据库导入到另一个数据库?在数据库之外进行 JOIN?)

很高兴得到您的帮助!

标签: pythondatabaseoraclepostgresql

解决方案


import cx_Oracle
from sqlalchemy import create_engine
import pandas as pd

engineORACLE = create_engine('oracle://user:password@ip:1521/ORACLE_SERVIVE_NAME')
enginePOSTGRE = create_engine('postgresql://user@lip:5432/mydb')

df1 = pd.read_sql_query('select * from tableA', con=engineORACLE)    
df2 = pd.read_sql_query('select * from TableB',con=enginePOSTGRE)

dfcombined = df1.merge(df2, on='blabla', how='left') # for left outer join, you can also do, 'right', 'outer' or 'inner' (change 'blabla' with the key!)

像这样的东西?


推荐阅读