python - 将多个 SQL 查询的结果附加到 Pandas 数据框或字典中
问题描述
我正在尝试遍历几个 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 查询的结果。例如,查询是否返回 Total Count 和 Failed Count,那么它们位于 2 个不同的列中。
解决方案
问题是您正在遍历数据框以进行查询,然后每次都分配 df['Results'] 。您应该应用索引值。
下面应该可以工作,或者至少让你走上正轨。我无法快速复制它来测试它。
from pandas import DataFrame
for index, row in df.iterrows():
cur.execute(row["SQL_Query"])
df.loc[index,'Results'] = cur.fetchall()
推荐阅读
- ios - UITextView 缩放和旋转后文本消失
- javascript - 如何添加页面链接而不删除以前的页面链接
- c++ - unordered_map 指向元素值的指针在调整大小后是否有效?
- python-3.x - 如何获得给定输入图像的 VGG 模型预测?
- c# - 无法将字符串转换为双精度
- c# - 追加模式下的 ChoJSONWriter
- angular - Angular 4+ 样式指南名称 od 组件
- c - if 语句在 C 中不能正常工作
- ruby-on-rails - 反应语法错误:意外的令牌,预期的“,”
- javascript - 如何使用正则表达式在字符串中强制使用字符/特殊字符