2015-08-17 21 views
0

我試圖使用Pandas.DataFrame作爲兩個後續SQL查詢之間的中間結果數據集。如何使用Pandas.DataFrame作爲SQL查詢的輸入?

我想象它看起來像:

import pandas.io.sql as pisql 
import pyodbc 

SQL_command1 = """ 
        select * from tab_A 
       """ 
result = pisql.read_frame(SQL_command1) 


SQL_command2 = """ 
        select * 
        from ? A 
        inner join B 
        on A.id = B.id 
       """  
pyodbc.cursor.execute(SQL_command2, result) 

SQL_command2在上面的代碼是一個簡單的僞代碼,在哪裏?輸入result作爲輸入並給出別名A

這是我第一次使用Pandas,所以我不確定我的想法是否可行或有效。任何人都可以讓我好嗎?

非常感謝。

回答

0

的僞代碼看起來像這樣

import pandas as pd 
df_a = pd.read_csv('tab_a.csv') #or read_sql or other read engine 
df_b = pd.read_csv('tab_b.csv') 
result = pd.merge(left=df_a, 
        right=df_b, 
        how='inner', 
        on='id') #assuming 'id' is in both table 

,並選擇大熊貓據幀的列,它會像df_a[['col1','col2','col3']]