Python 如何使用pandas使用别名表名进行SQL样式的内部联接

Python 如何使用pandas使用别名表名进行SQL样式的内部联接,python,pandas,Python,Pandas,在需要使用表别名(x1,x2)的多个语句上,如何使用内部联接构造熊猫数据集 我的假设是在merge语句上,我需要以某种方式将列名附加到带有x1_uu和x2_uu…的列中,但仅在一个条件下查看有关stackoverflow连接的示例 我需要前缀,因为我需要进一步嵌套此数据集 select * from data where cpty_type = 'INTERBRANCH'and (expiryDate >= '2017-04-18 00:00:00.000')) x1 inner join

在需要使用表别名(x1,x2)的多个语句上,如何使用内部联接构造熊猫数据集

我的假设是在merge语句上,我需要以某种方式将列名附加到带有x1_uu和x2_uu…的列中,但仅在一个条件下查看有关stackoverflow连接的示例

我需要前缀,因为我需要进一步嵌套此数据集

select * from data where cpty_type = 'INTERBRANCH'and (expiryDate >= '2017-04-18 00:00:00.000')) x1
inner join 
(select * from data where cpty_type = 'INTERBRANCH' and (expiryDate >= '2017-04-18 00:00:00.000')) x2
on (x1.extCptyID = x2.baseCptyID
and x1.baseCptyID = x2.extCptyID
有一个后缀参数,可以为重叠的列名追加后缀

df_A = pd.DataFrame({'id':pd.np.arange(1,10),'col1':list('ABCDEFGHI')})
print(df_A)

  col1  id
0    A   1
1    B   2
2    C   3
3    D   4
4    E   5
5    F   6
6    G   7
7    H   8
8    I   9

df_B = pd.DataFrame({'id':pd.np.arange(1,10),'col1':list('QWERTYUIO')})
print(df_B)  

  col1  id
0    Q   1
1    W   2
2    E   3
3    R   4
4    T   5
5    Y   6
6    U   7
7    I   8
8    O   9

pd.merge(df_A,df_B, on=['id'], suffixes=('_A','_B'))
输出:

  col1_A  id col1_B
0      A   1      Q
1      B   2      W
2      C   3      E
3      D   4      R
4      E   5      T
5      F   6      Y
6      G   7      U
7      H   8      I
8      I   9      O