簡體   English   中英

將多個SQL查詢的結果附加到Pandas Dataframe或Dictionary中

[英]Append results from multiple SQL Queries into a Pandas Dataframe or Dictionary

我試圖循環幾個SQL查詢並在數據框或字典中附加這些查詢的結果,其中鍵是SQL查詢

我能夠從這些SQL查詢中檢索結果。

from pandas import DataFrame
for index, row in df.iterrows(): 
    cur.execute(row["SQL_Query"]) 
    print(cur.fetchall())

輸出:

[(datetime.date(2019,4,8​​),datetime.date(2019,4,1))]

[(2,)]

[('6',2),('7',2)]

[(13,2)]

但是當我嘗試將它們添加到數據幀時,我只能從最后一個查詢中獲取結果。

from pandas import DataFrame
for index, row in df.iterrows(): 
    res = cur.execute(row["SQL_Query"]) 
    df['Results'] = DataFrame(cur.fetchall())

“輸出”

現在的目標只是在不同的列中獲得SQL查詢的結果。 例如,查詢返回總計數和失敗計數,然后是2個不同的列。

問題是你在迭代數據幀進行查詢,然后每次都通過df ['Results']進行分配。 您應該應用索引值。

以下應該工作或至少讓你走上正軌。 我無法快速復制它來測試它。

from pandas import DataFrame
for index, row in df.iterrows(): 
    cur.execute(row["SQL_Query"]) 
    df.loc[index,'Results'] = cur.fetchall()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM