Py学习  »  Matthew Barlowe  »  全部回复
回复总数  2
3 年前
回复了 Matthew Barlowe 创建的主题 » django查询以获取数据

你应该能够像这样过滤连接关系

parents = Policy.objects.filter(site__site_id=100)

您可以找到关于Django查询API的更多信息 here 但它通常是指你所提到的与 classname__columnname 还有许多其他的过滤/查询方法,您可以在文档中参考

您可以将数据库中已有的结果拉入新的数据帧,然后比较这两个数据帧。之后,您将只插入不在表中的行。不知道您的表或数据的格式,我只是使用一个通用的 SELECT 在这里陈述。

from sqlalchemy import create_engine
from sqlalchemy import exc
engine = create_engine('mysql://usr:psw@ip/schema')
con = engine.connect()
sql = "SELECT * FROM table_name"
old_results = pd.from_sql(sql, con)
df = pd.merge(old_results, results_final, how='outer', indicator=True)
new_results = df[df['_merge']=='right_only'][results_final.columns]
new_results.to_sql(name='error',con=con,if_exists='append')
con.close()

你也需要改变 if_exists append 因为设置为 replace 它将删除表中的所有值,并将其替换为熊猫数据框中的值。