将来自多个SQL查询的结果追加到Pandas数据框或字典中

时间:2019-04-17 16:19:08

标签: python sql-server dataframe dictionary pyodbc

我试图遍历几个SQL查询,并将这些查询的结果附加到数据框或字典中,关键是SQL查询

我能够从这些SQL查询中检索结果。

NotificationCenter

输出:

[(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(): 
    cur.execute(row["SQL_Query"]) 
    print(cur.fetchall())

"Output"

现在的目标只是在不同列中获得来自SQL查询的结果。例如,查询返回的总计数和失败计数是否在2个不同的列中。

1 个答案:

答案 0 :(得分:0)

问题是您要遍历数据帧进行查询,然后每次都分配df ['Results']。您应该应用索引值。

以下内容应该可以起作用,或者至少可以使您步入正轨。我无法快速复制此代码以对其进行测试。

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