为了账号安全,请及时绑定邮箱和手机立即绑定

在Python中使用SQL减号运算符

在Python中使用SQL减号运算符

慕慕森 2023-10-31 15:22:33
我想在两个表上执行减号操作,如下面的代码。SELECT    column_list_1FROM    T1MINUS SELECT    column_list_2FROM    T2;这是发生迁移之后的情况。我有这两个数据库,我已经这样连接了:import cx_Oracleimport pandas as pdimport pypyodbcsource = cx_Oracle.connect(user, password, name)df = pd.read_sql(""" SELECT * from some_table """, source)target = pypyodbc.connect(blah, blah, db) df_2 = pd.read_sql(""" SELECT * from some_table """, target) 如何使用查询在 python 中对源数据库和目标数据库运行减号操作?
查看完整描述

2 回答

?
白板的微信

TA贡献1883条经验 获得超3个赞

选择其中之一:

  1. 使用 Python 在两个结果集之间执行“手动”减运算。

  2. 通过 dblink 使用 Oracle。在这种情况下,您不需要从 Python 打开两个连接。


查看完整回答
反对 回复 2023-10-31
?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

如果你有一个数据库链接,那么你可以做一个减号,或者你可以使用 Pandas 的合并。


df = pd.read_sql(""" SELECT * from some_table """, source)

df_2 = pd.read_sql(""" SELECT * from some_table """, target) 



df_combine = df.merge(df2.drop_duplicates(),how='right', indicator=True)

print(df3)

df_combine 中将创建一个新列 _merge,其中包含值(数据框中都存在的行)和 right_only(数据框 df 中的行)。


以同样的方式,您可以加入左合并。


查看完整回答
反对 回复 2023-10-31
  • 2 回答
  • 0 关注
  • 121 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信